我有一个函数,它仅根据给定记录 id 的一组记录显示表。然后,该函数通过从参数数组中提取的变量调用类。这工作得很好...
function displayTable($arr) {
...
foreach ($a['ids'] as $key => $arr)
{
$m=$a['model'];
$o = new $m($arr['id']);
...
}
}
问题是我现在将类放在命名空间中,以下内容不起作用并引发错误......
function displayTable($arr) {
...
foreach ($a['ids'] as $key => $arr)
{
$m=$a['model'];
$o = new 'My'New'Namespace'$m($arr['id']);
...
}
}
解析错误:语法错误、意外的"$m"(T_VARIABLE)、预期标识符 (T_STRING)
我怎样才能做到这一点?
只需在
对象初始化之前将命名空间附加到变量:
$m = '''My''New''Namespace''' . $m;