エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント2件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
PHPは何故値渡しより参照渡しの方が遅いのでしょうか。
参照が速くない大きな理由の一つは、 $a =& $b; $c = $a; // ここで値のコピーが発生と思われる と同じ... 参照が速くない大きな理由の一つは、 $a =& $b; $c = $a; // ここで値のコピーが発生と思われる と同じことが、組み込み関数をコールするところで起こってしまうため、 参照の意味が無くなることが多いことだと思います。 提示していただいたベンチマークのコードだと、 is_array, implodeのところで$dataがコピーされていると思います。 関数をコールする都度これが起こると思われるので、 それが速度低下の大きな原因だと思います。 やはり「参照渡しそのものが遅い」わけではないと思います。 ただ、上の理由から、余程注意しないと、「参照渡しを使うと全体として遅くなる」 という結果を招くことは確かだと思います。 また、場合によってはガベコレの影響も大きいようなので、 ベンチマークの時は注意する必要があると思います。 (下のサンプルのガベコレのところを変えるだけで随分違います)
2011/02/04 リンク