PHP - 获取具有类数组的实例化对象数组

时间:2017-06-17 23:33:59

标签: php arrays class object

我的问题是从类数组中获取对象数组的简洁方法。

我在array_filter()上使用get_declared_classes()获得的课程数组。

编辑:

我自己的尝试非常正确,事情是我忘了在回调函数中返回in_array()的值:

$classes_array = array_filter(
     get_declared_classes(),
        function($class_name){
           return in_array('IItem', class_implements($class_name));
         }

$objects_array;
    foreach($classes_array as $class){
        $objects_array[] = new $class();
    }

1 个答案:

答案 0 :(得分:3)

您可以使用array_map(),并参阅Creating PHP class instance with a string

$objects = array_map(function($v){
  return new $v();
}, get_declared_classes());