okuhikiさん、こんにちは。またまた、丁寧なご指摘ありがとうございます。
Quote:
\modules\piCal0.84\class\piCal.php Line 157
もしかしたら、
header( $reload_str4header ) ;
でしょうか。
Line 156 で $reload_str4header がセットされただけで未使用だったので。
typoのご指摘ありがとうございます。0.84a で修正します。
Quote:
\modules\piCal0.84\include\read_configs.php Line 90
リファレンスを受け取るようですが、Noticeが表示されます。
私の力量では詳細までは判りませんが、XoopsMemberHandler(member.php)のgetGroupsByUser関数はリファレンスを返す作りになっていない為にNoticeが表示されるのかな。
XoopsMembershipHandler extends XoopsObjectHandler(group.php)のgetGroupsByUser関数はリファレンスを返してますね。
とりあえずスカラー型および配列型は「参照を返す」こと自体がPHPの特性に合っていません。というわけで、ハンドラなどの、明示的なオブジェクト以外については、値で受け取るようにします。
このあたり、XOOPSの初期設計の問題でもありますね。module.textsanitizer.php なんかは、やたらと参照渡しを利用していますが、PHPの特性(リファレンスカウント)を知っていたらこんなコードにはなりません。これらもすべて値渡しに統一すべきでしょう。
Quote:
\modules\piCal0.84\class\piCal_xoops.php に記述された、以下の関数は「配列を返す」とコメントに書かれていますが、使用時にはリファレンスを受け取ろうとしてNoticeが出るように感じます。
get_blockarray_coming_event
get_blockarray_new_event
get_blockarray_date_event
これも私のミスですね。
PHPでは、配列であろうと、参照ではなく値で受け取るべきです。
0.84aの変更で、piCalが出すNoticeが無くなれば良いのですが。