我正在使用以下代码将动态子节点添加到 xml 节点

 <?php
   $recordXML = new SimpleXMLElement("<Record></Record>");
   $rowXML = $recordXML->addChild('row');
   foreach ($array as $column => $column_value) {
                $rowXML->addChild($column,$column_value );
            }

当在任何 "unterminated entity reference" warning! 中有一个 ampresand & 时,此代码给出 $column_value ,我知道 & 可以转义如果我们分配子内容如下
 $rowXML->column_name = "text & content";
 // gives <row><column_name>text &amp; content </column_name></row>
 // without any warning

现在如何使用这种方法添加带有ampresand转义的动态子节点?

最佳答案

基本上要让它为你工作将不得不做这样的事情:

$rowXML->{$column} = $column_value;

关于PHP SimpleXMLElement : How to add dynamic child with ampersand escaping,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30762586/

10-11 20:48