【发布时间】:2012-10-19 09:16:39
【问题描述】:
到目前为止,这是我的代码......不用说,它不起作用:(
$feed = <<< THEXML
<programs>
<program>
<date>2009-04-16</date>
<start_time>17:00</start_time>
<leadtext>hello hello!
</leadtext>
<name>Program 1</name>
<b-line>Comedy</b-line>
<synopsis>Funny stuff
</synopsis>
<url>http://www.domain.tld/program_name</url>
</program>
<programs>
THEXML;
$xml = (array) simplexml_load_string($feed);
print_r($xml);exit;
感谢任何帮助,已经在 php.net 网站上呆了几个小时,感觉脑残了。
请注意,在上面的示例 xml 中只有一个
<program>...</program>
标签,但实际上我需要使用其中的一个或多个。 例如
<programs>
<program>...</program>
<program>...</program>
<program>...</program>
</programs>
我想如果我可以让一个工作,然后我可以循环它,但我只是想我会在这里解释我要做什么。
提前致谢!
【问题讨论】:
-
print_r($xml);的输出是什么?是什么让您无法循环播放? -
您发布的 XML 也不是有效的 XML。
-
在到达 print_r 语句之前出现错误。不幸的是,这就是我必须使用的 XML……我可以在开头或结尾添加一些东西……但中间的其余部分必须保持不变。
-
好的,警告.. 不是错误,底部的输出是:Array ( [0] => ) 将在一秒钟内发布警告
-
警告:simplexml_load_string() [function.simplexml-load-string]:实体:第 17 行:解析器错误:过早标记程序中的数据结束第 17 行 C:\wamp\www\MTG\test_array2.php 第 26 行 ****** 警告:simplexml_load_string() [ function.simplexml-load-string]: <程序>在 C:\wamp\www\MTG\test_array2.php 第 2 行