多次访问时,是否值得将对象属性保存到变量中?

Luc*_*lin 4 php memory wordpress performance

特别是在wordpress中,我想知道:从循环中多次访问变量时,$post->ID$post_id变量保存到变量中是否有意义?

我的意思是: $post_id = $post->ID

然后总是$post_id在需要时调用函数.

我基本上发现自己一直这样做,因为在javascript中你节省了内存.但是在这个php/wordpress上下文中也是如此吗?

Mat*_*t S 5

在现代PHP中添加$post_id变量几乎没有内存影响,如果它只读取循环.两个变量的值在一个内存位置引用,直到您修改其中一个变量,此时PHP将其复制到内存中的两个单独位置.这被称为写入时复制.

性能的唯一区别可能是取消引用object属性.如果有的话,成本很小,可以忽略不计.

所以要回答你原来的问题,不值得添加另一个变量来获得性能.另请参阅关于微优化的广泛对话.