我有一个数组,其中包含一些php类名(例如ClassOne.php)
classes = [ 'ClassOne' , 'ClassTwo' , 'ClassTree' ];
我想编写一个循环,为每个类名称创建一个新对象。没有循环,看起来像这样:
$class1 = new ClassOne;
$class2 = new ClassTwo;
$class3 = new ClassTree;
创建对象之后,我要检查$ class1,2,3,...是否为主类(组件)的实例
是否可以将新对象存储在可以这样迭代的数组中?
$classes = [ $classs1, $class2, $class3 ];
foreach($classes as $class)
{
if (is_object($class) && $class instanceof Component)
{
echo 'is an instance of Components';
}
}
答案 0 :(得分:2)
您可以通过以下方式进行简单循环:
foreach($phpclasses as $class) {
$classes[] = new $class();
}
或者您也可以合并循环并进行以下操作:
foreach($phpclasses as $class) {
$c = new $class();
if (is_object($c) && $cinstanceof Component)
echo 'is an instance of Components';
}
也可以看看this问题