PHP - 在 XML 标签中使用特殊字符

PHP - Using special characters in XML tag

您好,我正在使用 PHP 并且我编写了一个应用程序来创建一个 SimpleXMLObject 并用数据库查询的结果填充它。结果保存为标签。我用

完成了这个
if (!isset($set->$parttemp)) {
$parttemp = "$parttemp &#40 $groupname &#41";
$set = $set->addChild($parttemp);
}

我的问题是,我想在 XML 标签中使用特殊字符。通过一些研究,我发现您需要使用该字符的代码,例如“(”,您需要编写 (

但是如果您想在标签中使用这些代码,您还需要用该代码替换标签。例如对于 我需要写 < permission ( s ) / >

这没什么大不了的,但标签是通过 addChild 操作设置的,所以我无法操纵它们。还有其他解决方案吗?

像“(”这样的标点字符在 XML 元素或属性名称中无效。试图将它们转义(例如作为十进制字符引用 ()是没有用的 - 字符引用在名称中无法识别。

您必须找到一些应用程序级别的方法来将字符串编码为有效名称。例如,我看到人们使用 <permission_x28_s_x29_>.

不过,通常我更喜欢<element name="permissions(s)">