首页 > 解决方案 > 如何读取标签中包含特殊字符的 SimpleXML-Object 值?

问题描述


嗨,大家好!我需要你的帮助。
我正在 PHP/HTML atm 中创建一个简单的 XML 阅读器,但遇到了一个问题。
一个 XML-Tag 中有一个特殊字符(“-”),例如:

<some-tag>foobar</some-tag>

如何在分配变量时转义字符?

$value = $xml->some-tag

不起作用,因为 PHP 将字符视为运算符。

我已经尝试过:

$value = $xml->'some-tag'

但这“显然”也不起作用。
这也是我的第一篇文章,对于任何错误或违反规则,请提前道歉。

标签: phpxmlsimplexml

解决方案


在 PHP 中,您可以将变量的内容用作变量。

在您的情况下,您可以执行以下操作:

$myTagName = "some-tag";
$value = $xml->$myTagName;

编辑
根据这篇文章https://stackoverflow.com/a/3626928/4641073,您可以使用:

$value = $xml->{'some-tag'};

推荐阅读