循环的simplexml属性
我正在尝试在html表中输出xml数据 我如何才能在表中使用foreach循环获得所有属性TITLE、ARTIST,而无需手动编写它们循环的simplexml属性,xml,parsing,simplexml,Xml,Parsing,Simplexml,我正在尝试在html表中输出xml数据 我如何才能在表中使用foreach循环获得所有属性TITLE、ARTIST,而无需手动编写它们 标题 艺术家 通过这段代码,我获得了xml数据 $xml = new SimpleXMLElement('http://www.w3schools.com/xml/cd_catalog.xml', 0, true); foreach($xml->CD as $cd) { echo '<tr>'; ec
标题
艺术家
通过这段代码,我获得了xml数据
$xml = new SimpleXMLElement('http://www.w3schools.com/xml/cd_catalog.xml', 0, true);
foreach($xml->CD as $cd)
{
echo '<tr>';
echo '<td>'.$cd->TITLE.'</td>';
echo '<td>'.$cd->ARTIST.'</td>';
echo '</tr>';
}
$xml=新的SimpleXMLElement('http://www.w3schools.com/xml/cd_catalog.xml,0,对);
foreach($xml->CD作为$CD)
{
回声';
回显“.$cd->TITLE.”;
回音“.$cd->艺人”;
回声';
}
如果我理解正确,您希望动态写入标题和内容,为此您需要定义一个根节点(例如,这将是CD)
$xml=新的simplexmlement(“”,0,true)
echo';
回声';
回声';
foreach($xml->CD[0]->children()作为$child)
{
回显“”。$child->getName()。';
}
回声';
回声';
foreach($xml->CD作为$CD){
回声';
foreach($cd->children()作为$child){
回音“.$child.”;
}
回声';
}
回声';
类似这样的内容您的代码看起来不错,但是我们需要知道xml,以便判断这是否正确,为什么在我的代码中我只获得属性,但我还希望自动获得标签名,如“title”、“artist”fot thead table cd_catalog.xml是什么样子的,标题在那里吗?你可以打开Empire BurlesqueBob Dylanusa Columbia10.901985隐藏你的心形Bonnie Tylerukbs记录9.901988很可能你不是指属性而是元素。请检查正式的XML术语,否则您的问题可能听起来有点离题。
$xml = new SimpleXMLElement('http://www.w3schools.com/xml/cd_catalog.xml', 0, true);
foreach($xml->CD as $cd)
{
echo '<tr>';
echo '<td>'.$cd->TITLE.'</td>';
echo '<td>'.$cd->ARTIST.'</td>';
echo '</tr>';
}
echo '<table>';
echo '<thead>';
echo ' <tr>';
foreach ($xml->CD[0]->children() as $child)
{
echo '<th>'.$child->getName().'</th>';
}
echo ' </tr>';
echo '</thead>';
foreach($xml->CD as $cd) {
echo '<tr>';
foreach ($cd->children() as $child) {
echo '<td>'.$child.'</td>';
}
echo '</tr>';
}
echo '</table>';