stdClass vs array。推荐哪个?

时间:2014-07-02 09:33:42

标签: php mysql arrays stdclass

建议在哪里使用其中一个?我想存储db。中列出的文章中的数据。

这是一个简单的问题:

echo $Datastore->name; //I like it works with foreach

//vs

echo $Datastore['name'];

哪个最好?获取元素的速度stdClassarray之间有什么区别吗?

1 个答案:

答案 0 :(得分:11)

有一个类似的问题什么是更好的stdClass或(对象)数组来存储相关数据?this answer

  

基于小测试(http://phpfiddle.org/lite/code/cz0-hyf)我可以说   使用" new stdClass()"比其他人慢约3倍   选项。

     

很奇怪,但是比较投射阵列非常有效   到stdClass。

     

但是这个测试只计算执行时间。它不计量内存。

     

P.S。我只使用phpFiddle来共享代码。测试在我当地完成   PC。

In answer to another similar question你可以看到这个结论:

  
      
  1. 对于数组,PHP 5.5比PHP 5.4快,对于对象它几乎相同
  2.   
  3. 由于PHP 5.5和数组的优化,Class比Arrays慢。
  4.   
  5. stdClass很邪恶。
  6.   
  7. Class仍使用比Arrays更少的内存。 (减少约30-40%!!)。
  8.   
  9. SplFixedArray类似于使用Class但它使用更多内存。
  10.