在php中从xml读取数据

时间:2011-06-21 15:24:38

标签: php xml

有一个问题,我真的需要一些帮助。我已经获得了一个XML文件,我需要将其转换为PHP才能在我的网站上使用。我对XML的经验非常有限,通常它们的格式很简单,但这个特殊的XML文件在每个元素上都有值:

http://partnerfeed.itsfogo.com/partnerfeed.aspx?partnerfeedID=1726&ZoneID=128470&partnerTargetLink=&partnerField=itsfogoTargetLink

我需要根据XML文件中的值来提取特定数据。由于我对此缺乏了解,我想知道是否有人可以帮助解释这个过程,以便我更好地理解。我真的需要知道如何获取xml文件,然后加载它的特定元素。我看过simplexml但还没有真正理解它。

作为一个例子,我需要显示联盟=“英超联赛”的数据,然后显示该特定联赛中的所有儿童价值。

非常感谢任何帮助:)

3 个答案:

答案 0 :(得分:0)

您想要查找名为simplexml_load_string()的函数 - 这将采用文本字符串 - 或者在您的情况下使用XML。 您可以使用file_get_contents()获取XML字符串。使用simplexml_load_string(),您将返回一个描述XML文件整个结构的对象,然后您可以遍历这个对象,直到您的内容,快速,简单和轻松为止!

您可能想要仔细检查您的实际XML语法是否有效&以一种方式构建,当您使用simplexml_load_string()

将其解析为对象时,可以轻松遍历

答案 1 :(得分:0)

$source = file_get_contents("http://partnerfeed.itsfogo.com/partnerfeed.aspx?partnerfeedID=1726&ZoneID=128470&partnerTargetLink=&partnerField=itsfogoTargetLink");
$xml = simplexml_load_string($source);
var_dump($xml);

答案 2 :(得分:0)

有一个名为simplexml_load_file的函数,同时绕过了首先使用file_get_contents的要求。

$xml = simplexml_load_file('http://partnerfeed.itsfogo.com/partnerfeed.aspx?partnerfeedID=1726&ZoneID=128470&partnerTargetLink=&partnerField=itsfogoTargetLink');

该函数返回一个SimpleXMLElement对象,您可以使用该对象浏览该DOM。