对象初始化性能

时间:2014-04-23 20:25:32

标签: php performance benchmarking

我的问题听起来很简单,但我无法在互联网上找到答案。

假设您有一个具有某些属性的类。在空对象的初始化和稍后更改变量的值之间是否存在性能差异:

$obj = new MyClass();
$obj->value1 = 1;
$obj->value2 = 2;

并创建一个基本上做同样事情的构造函数:

class MyClass
{
    public $value1;
    public $value2;

    public function __construct($val1, $val2)
    {
        $this->value1 = $val1;
        $this->value2 = $val2;
    }
}

$obj = new MyClass(1,2);

请不要考虑代码可读性和最佳实践:)

1 个答案:

答案 0 :(得分:1)

只是为了好玩,我尝试了1 000 000次迭代:

构造函数中的

  

lukashes @ biorobot:/ tmp / php $ php in.php

     

string(13)“1012924.416kb”

     

string(18)“2.2154049873352sec”

out of constuctor

  

lukashes @ biorobot:/ tmp / php $ php out.php

     

string(12)“996933.632kb”

     

string(18)“2.0962958335876sec”

注意:我将保存所有1 000 000个实例。