基本上我的设置是我有很多想要创建的对象。它将变成什么类型的对象取决于一个变量,即类型。所以最初我必须做很多 if 语句,所以为了缩短它我创建了一个数组,但我遇到了能够通过数组创建实际对象的问题。
这是我最初的:
if($object->type = 'text')
{
$object_new = new Text();
} elseif($object->type = 'image') {
$object_new = new Image();
} ....
但我想做的是:
$all_objects = array('text'=> new Text(), 'image' => new Image(), ...);
$object_new = $all_objects($object->type);
这将大大缩短我的代码并使其更有效率。