我的问题听起来很简单,但我无法在互联网上找到答案。
假设您有一个具有某些属性的类。在空对象的初始化和稍后更改变量的值之间是否存在性能差异:
$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);
请不要考虑代码可读性和最佳实践:)
答案 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个实例。