解析XML文件 - 标记是保留字

时间:2016-02-24 08:07:01

标签: php xml parsing keyword

我正在尝试从XML文件中获取数据的值。我能够很好地获得其他行,但是我无法将[asin] [/ asin]标记之间的数据作为PHP中的保留字。我想知道解决方法是什么?

这是我的代码:

$xml = file_get_contents($request_url, false, $context);
$xml = simplexml_load_string($xml);

$item = $xml->Items->Item[0];

// ** this is my Problem **
$asin = htmlentities((string) $item->Asin); 
// ** this is my Problem **

$title = htmlentities((string) $item->ItemAttributes->Title);

以下是xml文件的一部分:

    <Item>
        <ASIN>B00TSUGXKE</ASIN>
        <ParentASIN>B010BWYDYA</ParentASIN>

其他元素运行正常。只是这个标签&#34; Asin&#34;它是php中的保留字,因此无法使用。有没有其他方法可以引用标签而不是&#34; asin&#34; php中的函数?

3 个答案:

答案 0 :(得分:1)

试试这个:

{{1}}

那应该为你做。

答案 1 :(得分:0)

$asin = htmlentities((string) $item->{'ASIN'});

XML区分大小写。我做了一些测试,这很好。

答案 2 :(得分:0)

实际上问题是字母大小写。在XML格式中它是大写ASIN但是你在Camel案件中请求。

应该是:

$asin = htmlentities((string) $item->ASIN);