我正在试验 PHP 5.3 的命名空间功能,但我只是想不出如何实例化带有命名空间前缀的新类。
这目前工作正常:
<?php
new $className($args);
?>
但是如何在变量类名前面添加我的命名空间呢?以下示例不起作用。
<?php
new My\Namespace\$className($args);
?>
此示例产生:解析错误:语法错误,意外的 T_VARIABLE
最佳答案
试试这个:
$class = "My\Namespace\\$className";
new $class();
变量$className
前必须有两个反斜杠\\
进行转义
关于PHP,命名空间中的新变量类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7936519/