PHP SimpleXMLElement:如何添加带符号转义的动态子项
PHP SimpleXMLElement: How to add dynamic child with ampersand escaping
我正在使用以下代码将动态子节点添加到 xml 节点
<?php
$recordXML = new SimpleXMLElement("<Record></Record>");
$rowXML = $recordXML->addChild('row');
foreach ($array as $column => $column_value) {
$rowXML->addChild($column,$column_value );
}
当任何 $column_value
中有一个符号 &
时,此代码给出 "unterminated entity reference" warning!
,我知道 &
可以被转义 如果我们将子内容分配为以下
$rowXML->column_name = "text & content";
// gives <row><column_name>text & content </column_name></row>
// without any warning
现在如何使用此方法添加带符号转义的动态子节点?
基本上,要让它为你工作,你必须做这样的事情:
$rowXML->{$column} = $column_value;
我正在使用以下代码将动态子节点添加到 xml 节点
<?php
$recordXML = new SimpleXMLElement("<Record></Record>");
$rowXML = $recordXML->addChild('row');
foreach ($array as $column => $column_value) {
$rowXML->addChild($column,$column_value );
}
当任何 $column_value
中有一个符号 &
时,此代码给出 "unterminated entity reference" warning!
,我知道 &
可以被转义 如果我们将子内容分配为以下
$rowXML->column_name = "text & content";
// gives <row><column_name>text & content </column_name></row>
// without any warning
现在如何使用此方法添加带符号转义的动态子节点?
基本上,要让它为你工作,你必须做这样的事情:
$rowXML->{$column} = $column_value;