【发布时间】:2012-10-16 08:05:23
【问题描述】:
XML:
<?xml version="1.0" encoding="ISO-8859-1"?>
<lessons>
<lesson level="1" course="2">
<name type="Dog" category="Animals">Dog name</name>
</lesson>
</lessons>
我想得到这样保存的值:
$type = "Dog";
$category = "Animals";
$name = "dog name";
这就是我所做的:
foreach($xml->name as $name){
$type = $name['type'];
$category = $name['category'];
echo "Type: $type Category: $category<br>";
// AND TO get the text, haven't figuered it out yet.. <name ..="" ..="">text</name>
}
但它不起作用。不要得到任何错误或任何输出。有什么想法吗?
编辑: 好的。我改变了 foreach($xml->name as $name)
to foreach($xml->lesson->name as $name)
所以我得到了属性的值。但是现在我不知道如何获得孩子的价值。 我试过这个:$xml->lesson->children()
它打印 children()
已解决:$text = $xml->lesson->children(); 回声$文本;
问题是:我在其他代码中使用了 utf-8,但没有更改它。
【问题讨论】:
-
@MuthuKumaran 我认为这是合法暗示的问题之一。简短的代码示例,它没有输出任何内容,这是怎么回事?
-
可能是因为
$xml指的是<lessons>,而不是<lesson>? -
可能是这样,解决方案是什么?