在PHP中读取XML
我正在尝试使用simplexml\u load\u文件读取XML。以下是我的XML:在PHP中读取XML,php,xml-parsing,Php,Xml Parsing,我正在尝试使用simplexml\u load\u文件读取XML。以下是我的XML: <map_style> <background_color>FFFFFF</background_color> <state_color>c5d577</state_color> <label_color>212121</label_color> <state_hove
<map_style>
<background_color>FFFFFF</background_color>
<state_color>c5d577</state_color>
<label_color>212121</label_color>
<state_hover_color>AECE13</state_hover_color>
<label_hover_color>FFFFFF</label_hover_color>
<state_inactive_color>dbe99c</state_inactive_color>
<label_inactive_color>212121</label_inactive_color>
<stroke_color>AECE13</stroke_color>
<lake_color>ffffff</lake_color>
<lake_stroke_color>ffffff</lake_stroke_color>
<other_color>FFFFFF</other_color>
<other_stroke_color>FFFFFF</other_stroke_color>
</map_style>
<!------for map on home page---------------->
<mapstyle_home mapOutlineColor="c2da78" mapRollOverColor="AECE13" mapGradientColor="AECE13"></mapstyle_home>
<!------for featured properties settings---------------->
<featured_property_style>
<layout width="203" height="182" background="#FFFFFF" imageBackground="#aec565" showGrid="1" autoPlayDefault="1" />
<buttons navigationDots="1" playPause="1" />
<text option="1" />
<featured_property_style>
FFFFFF
c5d577
212121
AECE13
FFFFFF
dbe99c
212121
AECE13
ffffff
ffffff
FFFFFF
FFFFFF
我可以阅读XML直到
。然而,我补充说:
<!------for map on home page---------------->
<mapstyle_home mapOutlineColor="c2da78" mapRollOverColor="AECE13" mapGradientColor="AECE13"></mapstyle_home>
<!------for featured properties settings---------------->
<featured_property_style>
<layout width="203" height="182" background="#FFFFFF" imageBackground="#aec565" showGrid="1" autoPlayDefault="1" />
<buttons navigationDots="1" playPause="1" />
<text option="1" />
<featured_property_style>
然后尝试读取XML,它会给出一个错误
以下是我的代码:
$xml = simplexml_load_file($strCurlUrl);
//$xml = new SimpleXMLElement($strCurlUrl);
//echo $xml->getName() . "<br />";
$this->m_arrXml = array();
foreach($xml->children() as $child)
{
//echo $child->getName() . ": " . $child . "<br />";
$this->m_arrXml[$child->getName()] = $child;
}
$xml=simplexml\u load\u文件($strCurlUrl);
//$xml=新的SimpleXMLElement($strCurlUrl);
//echo$xml->getName()。“
”;
$this->m_arrXml=array();
foreach($xml->children()作为$child)
{
//echo$child->getName()。“:”$child。“
”;
$this->m_arrXml[$child->getName()]=$child;
}
其中,
$strCurlUrl
位于xml文件上方。看起来您的xml无效。XML总是只需要一个根节点!在您的示例中有三个…但是,只要我添加。。。。什么?他用以前没有的资料完成了这个问题!