所以我开始在php库(5.5)中使用simplexml解析器..我以为我理解了什么是ono但显然不是......所以我有一个看起来像这个的xml文件
<?xml version="1.0" encoding="UTF-8" ?>
<Data><Series>
<Genre>|Animation|Comedy|</Genre>
<IMDB_ID>tt0096697</IMDB_ID>
<Language>en</Language>
<SeriesName>The Simpsons</SeriesName>
.
.
.
</Series>
<Episode>
.
.
</Episode>
<Episode>
.
.
</Episode>
</Data>
</xml>
现在我开始在Episode标签之间抓取东西,一切都很棒......现在我想在我的php代码中获取<SeriesName>
:
$series = simplexml_load_file('en.xml');
$series_name = $series->SeriesName;
然而,这似乎没有用,我也试过
$series_name = $series->Data->Series->SeriesName
..并且这会返回尝试获取非对象属性的错误。我看了几个教程,似乎无法理解我做错了什么......长时间的啰嗦我知道但是我花了一些时间研究没有运气,任何帮助都会很棒,因为我确定它是愚蠢的东西
答案 0 :(得分:1)
更改此行:
$series_name = $series->Data->Series->SeriesName;
要:
$series_name = $series->Series->SeriesName;
答案 1 :(得分:0)
使用var_dump($series)
或print_r($series)
查看SimpleXMLElement对象的内容。
答案 2 :(得分:0)
使用正则表达式
preg_match_all('%(?<=<SeriesName>).*(?=</SeriesName>)%si', $subject, $result, PREG_PATTERN_ORDER);
$ result将是一个包含SeriesNames的数组