Call-time pass-by-reference has been deprecated

スポンサーリンク

仕事で以下のようなエラーが沢山はき出されていました。

Call-time pass-by-reference has been deprecated

これを対応するためには、
htaccessに以下の一文を入れれば良いようです。

php_flag allow_call_time_pass_reference on


ちなみに、allow_call_time_pass_referenceは

関数のコール時に引数を強制的に参照で渡す機能の有効/無効を設定 します。この機能は過去のものであり、将来のバージョンの PHP/Zendではサポートされない可能性があります。 推奨される方法は、関数宣言時に参照渡しとするべき引数を指定す る方法です。将来のバージョンでの動作を保障するために、このオ プションをoffとし、スクリプトがこの状態で正しく動作することを 確認することが推奨されます。 (この機能を使用する度に警告が発生し、引数は参照ではなく値で渡 されます。)

関数コール時に参照で引数を渡すことは、コードの明解さを損なうために 廃止されています。関数は、引数が参照渡しであると宣言されて いない場合でも、文書化されていない方法で、その引数を修正できます。 副作用を回避するためには、どの引数を参照渡しとするかを関数宣言でのみ 指定すると良いでしょう。

だそうです。


Amazonで『Call-time pass-by-reference has been deprecated』を検索してみると、
「なか見!検索」で書籍が引っかかりました。


PHP 5 Kochbuch. Beispiele und Loesungen fuer PHP-Programmierer

洋書ですが、こういうのが1冊あると便利かもしれません。

スポンサーリンク