小编use*_*053的帖子

PHP SimpleXMLElement 不会将引号转换为实体

我正在编写一个 PHP 脚本来生成一些 xml 文档,但我在 SimpleXML 和引号方面遇到了一些问题。

如果我有这样的代码:

$xml = new SimpleXMLElement('<myxml />');
$xml->addChild('title','My Feed');
$xml->addChild('description','Entity data here - &amp; &quot; &apos;');
Run Code Online (Sandbox Code Playgroud)

如果我 print_r $xml obj 然后我得到这个:

print_r($xml);
SimpleXMLElement Object
(
  [title] => My Feed
  [description] => Entity data here - & " '
)
Run Code Online (Sandbox Code Playgroud)

似乎一旦在对象中,它就会使实体回到各自的角色。但是,当我在对象上调用 asXML() 以获取 XML 时,它向我显示了以下内容:

echo $xml->asXML();
<?xml version="1.0"?>
  <myxml>
  <title>My Feed</title>
  <description>Entity data here - &amp; " '</description>
</myxml>
Run Code Online (Sandbox Code Playgroud)

它使 & 返回一个实体,但它似乎将引号保留为字符。它不应该将它们全部转换为实体吗?

php xml simplexml xml-entities

2
推荐指数
1
解决办法
1166
查看次数

标签 统计

php ×1

simplexml ×1

xml ×1

xml-entities ×1