您能帮我解释一下如何阅读和解析包含属性的XML文件。
XML文件看起来像这样,有很多'问题'节点
<questions>
<description>
Here goes description....
</description>
<evaluation_order>
1
</evaluation_order>
<question text="question1">
<answer score="10">answer 1</answer>
<answer score="20">answer 2</answer>
<answer score="30">answer 3</answer>
<answer score="40">answer 4</answer>
</question>
<question text="question2">
<answer score="1">answer 5</answer>
<answer score="2">answer 6</answer>
<answer score="3">answer 6</answer>
<answer score="4">answer 7</answer>
</question>
</questions>
PHP代码如下所示:
<?php
$questions = simplexml_load_file( 'xml/workshop_evaluation_questions_1.xml');
$questions = json_encode($questions);
$questions = json_decode($questions, TRUE);
$name = $questions['description'];
//echo $name;
//echo '<br>';
$evaluation_order = $questions['evaluation_order'];
//echo $evaluation_order;
//echo '<br>';
foreach ($questions['question'] as $res) {
$text = $res['@attributes']['text'];
foreach ($res['answer'] as $ans) {
//pr($questions) . ' => ';
echo $ans . ' => ';
echo $ans->score[0]; // how to get score???
echo '<br>';
}
echo '<hr>';
}
?>
你能帮我解决一下如何解决这个问题
答案 0 :(得分:0)
我讨厌等待回答 : - )
我这将解决我的问题;如果您有更好的想法请与我分享
$questions = simplexml_load_file("xml/workshop_evaluation_questions_1.xml");
$cnt1 = 0;
foreach($questions->question as $k1=>$v1) {
echo ($questions->question[$cnt1]['text']);
echo ' => ';
echo count($questions->question[$cnt1]->answer);
echo '<br>';
$cnt2 = 0;
foreach($questions->question[$cnt1]->answer as $k2=>$v2) {
echo $questions->question[$cnt1]->answer[$cnt2];
echo ' => ';
echo $questions->question[$cnt1]->answer[$cnt2]['score'];
echo '<br>';
$cnt2++;
}
$cnt1++;
echo '<hr>';
}