开发者

The Question of By Reference Recommended on Arrays?

This is something I needed to clear up awhile back. In PHP 5.3+, I wanted to ask if this improves performance on a very large array result? And do you have a way I can demonstrate the proof?

$synonyms = & MobyThesaurus::GetSynonyms("check");

Note the ampersand (by referen开发者_Python百科ce, instead of by value).


PHP uses copy-on-write behind the scenes. Meaning, values are only copied when they're altered. Until then there's no copying going on and $synonyms basically acts as a reference anyway. If you're only ever reading from the array, there should be no difference in performance.

Once you are writing to the array, it does make quite a bit of difference in functionality whether the variable is a reference or not. Don't use references unless you mean to, or you may introduce funky side effects into your app.

There are a many optimizations going on behind the scenes, don't expect to be able to optimize it any more with such "tricks". PHP is the wrong language for being clever with pointer/reference acrobatics. :-)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜