Можно ли создать класс, используя переменную вместо ее имени?
Вместо:
class weirdclassname extends WP_widget { .... }
Я бы хотел:
class $nameVariable extends WP_widget { .... }
Мне это нужно, потому что я создаю несколько классов и должен придумывать много разных уникальных имен для предотвращения конфликтов. Мое воображение уже плачет = |
Вы можете использовать функцию Eval определить класс динамически https://implode.io/uP0WXH
class Foo
{
}
$child = <<<CLASS
class %s extends Foo
{
public \$name = '%s';
}
CLASS;
$classNames = ['Class1', 'Class2', 'Class3'];
foreach ($classNames as $className) {
eval(sprintf($child, $className, $className));
}
print_r(new Class1);
print_r(new Class2);
print_r(new Class3);
Других решений пока нет …