PHPの関数の引数は参照渡しがデフォルト?
@shimooka これは間違いではないかと思うのですが、いかがでしょうか。「注意: PHP 5以降、デフォルトで値はリファレンス渡しとなります。」http://t.co/D4qonZJ
2011-08-19 11:12:05@honda0510 マニュアルの「関数の引数」というコンテキストだとすると、http://t.co/0zWZkNu あたりの話でしょうか?少なくともオブジェクトを渡す場合は参照渡しになった思います。
2011-08-19 11:30:47@honda0510 これ、訳が間違ってますね。原文は「Note: As of PHP 5, default values may be passed by reference.」。PHP5以降、デフォルト引数値(マニュアルまま)を参照渡しにすることもできるよ、ってことですね。
2011-08-19 11:39:24@shimooka ちなみになんですが、オブジェクトではない値も参照渡しにした方が、処理として速いのではないか、と思って調べていました。もし、この辺についてもご存知でしたら、教えていただいてもよろしいでしょうか。
2011-08-19 11:48:35@shimooka 勉強になりました!ありがとうございました!「結論としては、関数内で値を直接変更しなければいけないような必要性が無ければ、PHPのcopy-on-writeに委ねたコーディングをするのが正解だと思います。」
2011-08-19 12:07:50#PHP マニュアルの誤訳を報告したところ、早速ご対応いただきました。「たぶん来週開けぐらいには php.net のマニュアルも更新されると思います。」とのことです。http://t.co/H0itzdl
2011-08-19 13:52:18@shimooka 「先ほど別の方からもご指摘をいただいた」とのことでしたが、shimookaさんでしたか。ありがとうございました。
2011-08-19 13:54:48@honda0510 あ、申し訳ないです。php-docに流すのが正規のルートですね。お手数でしたm(__)m
2011-08-19 13:58:18