gpt4 book ai didi

php - 从 PHP 中的变量实例化一个类?

转载 作者:IT老高 更新时间:2023-10-28 11:45:18 27 4
gpt4 key购买 nike

我知道这个问题听起来很模糊,所以我会用一个例子来更清楚地说明:

$var = 'bar';
$bar = new {$var}Class('var for __construct()'); //$bar = new barClass('var for __construct()');

这就是我想做的。你会怎么做?我当然可以像这样使用 eval():

$var = 'bar';
eval('$bar = new '.$var.'Class(\'var for __construct()\');');

但我宁愿远离 eval()。没有 eval() 有没有办法做到这一点?

最佳答案

先将类名放入变量中:

$classname=$var.'Class';

$bar=new $classname("xyz");

这通常是您在工厂模式中看到的那种东西。

Namespaces and dynamic language features了解更多详情。

关于php - 从 PHP 中的变量实例化一个类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/534159/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com