首页 > 后端开发 > php教程 > 如何在 PHP 中从变量实例化类?

如何在 PHP 中从变量实例化类?

Barbara Streisand
发布: 2024-11-17 16:17:01
原创
503 人浏览过

How Can I Instantiate a Class from a Variable in PHP?

在 PHP 中从变量实现类实例化

在 PHP 中,您可能会遇到需要从变量的值实例化类的场景。让我们用一个例子来说明这一点:

$var = 'bar';
$bar = new {$var}Class('var for __construct()'); //$bar = new barClass('var for __construct()');
登录后复制

此方法尝试创建 $var 变量指定的类的实例。然而,PHP 本身并不支持这种语法。

不使用 eval() 的替代方法

要在不使用 eval() 的情况下实现此目的,您可以使用变量来保存类名:

$classname = $var . 'Class'; // e.g. $classname = 'barClass'

$bar = new $classname('var for __construct()');
登录后复制

工厂模式

工厂模式中经常使用这种技术,用于集中类创建并将其与创建过程分离。在这种情况下,工厂类将根据配置或其他参数动态创建所需的类实例。

更多资源

有关动态语言功能和命名空间的更多信息,请参阅以下内容资源:

  • [命名空间](https://www.php.net/manual/en/language.namespaces.php)
  • [动态语言功能](https:/ /www.php.net/manual/en/language.types.dynamic.php)

以上是如何在 PHP 中从变量实例化类?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板