在连接var上使用addChild时出现PHP SimpleXML致命错误

时间:2012-11-14 17:18:14

标签: php xml simplexml addchild

我正在尝试在连接的var上使用addChild函数,但它似乎不起作用。我想它来自参数的对象类型,但我似乎无法将手指放在它上面。 当我尝试使用标准var时,它可以工作:

$prnp = $ndprofileASz2tnrap_portrestrictions->addChild('portRestriction');

但是当我尝试使用多个变量时,会出现错误:

$asversion = 'z2tnrap';
$nppr = '$ndprofileAS'.$asversion.'_portrestrictions';
$prnp = $nppr->addChild('portRestriction');

如果我“回显”$ nppr var,我得到正确的var,但addChild函数会导致错误消息:“致命错误:在非对象上调用成员函数addChild()”。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

那时

$nppr只是一个字符串。它不再是一个simplexml对象了。同样,您的语法不正确:

$nppr = '$ndprofileAS'.$asversion.'_portrestrictions';
        ^-           ^-

单引号字符串中的变量不进行插值。您正在为您的strin插入文字$,文字n,文字d等等,而不是$ ndprofileAS变量的值。