如果我在 PHP 5.x 中执行此操作(通常是伪代码):
class object{
__construct($id){
<<perform database query>>
}
}
$array(1) = new object(1);
$array(1) = new object(1);
我是否在浪费精力(内存、cpu 等)?数据库查询会运行两次吗?
避免这种情况的最佳方法是什么(如果这是一个问题)?使用$array(1) instanceof object
? isset($array(1))
? array_key_exists(1, $array)
?
有没有一种(好的?)方法可以在类再次完成所有工作之前检查它是否已经存在?
编辑:为了清楚起见,我不需要这个对象两次。这个对象将被再次使用$array(523) = new object(523);
我的主要问题是如何最好地避免冗余创建完全相同的对象。