0

(これは、phpを使用してxmlファイルからすべてのデータを取得できないこととは多少異なります)

現在、静的リストを使用して一連のデータを取得しています。

    $q1_result =  $tab->q1['listEntry'];
$q2_result =  $tab->q2['listEntry'];
$q3_result =  $tab->q3['listEntry'];
$q4_result =  $tab->q4['listEntry'];
$q5_result =  $tab->q5['listEntry'];
$q6_result =  $tab->q6['listEntry'];
$q7_result =  $tab->q7['listEntry'];
$q8_result =  $tab->q8['listEntry'];
$q9_result =  $tab->q9['listEntry'];
$q10_result =  $tab->q10['listEntry'];

このリストに追加または削除し続ける必要がないように、さまざまな数の(連続した)インスタンスを取得するにはどうすればよいですか?(すべての$ tab-> q(integer)['listEntry']エントリをループする必要があります)


これは、データを取得しているxmlファイルの例です。データを取得できますが、必要なもの(上記のリストにあるもの)だけをループする方法がわかりません。

magic5Out version="2.1.0">
<Report customerPK="Survey_30" locationPK="4439" userPK="1343895457" template="13642" formDate="2012-08-02T00:00:00" dateTimeStarted="2012-08-02T10:18:34" dateTimeMobileReleased="2012-08-02T10:20:03" currentStatus="5" reportGuid="b9f7681f-3468-402a-8dcc-60f0915b7d42">
<Results>
<Item itemPK="SurveyTab_200">
<q1 listEntry="No" listEntryId="239128"/>
<q1Comments text="latest test"/>
<q2 listEntry="No" listEntryId="239128"/>
<q2Comments text=""/>
<q3 listEntry="No" listEntryId="239128"/>
<q3Comments text=""/>
<q4 listEntry="No" listEntryId="239128"/>
<q4Comments text=""/>
<q5 listEntry="No" listEntryId="239128"/>
<q5Comments text=""/>
<q6 listEntry="No" listEntryId="239128"/>
<q6Comments text=""/>
<q7 listEntry="No" listEntryId="239128"/>
<q7Comments text=""/>
<q8 listEntry="No" listEntryId="239128"/>
<q8Comments text=""/>
<q9 listEntry="No" listEntryId="239128"/>
<q9Comments text=""/>
<q10 listEntry="No" listEntryId="239128"/>
<q10Comments text=""/>
<q11 listEntry="No" listEntryId="239128"/>
<q11Comments text=""/>
<q12 listEntry="No" listEntryId="239128"/>
<q12Comments text=""/>
<q13 listEntry="No" listEntryId="239128"/>
<q13Comments text=""/>
<q14 listEntry="No" listEntryId="239128"/>
<q14Comments text=""/>
<q15 listEntry="No" listEntryId="239128"/>
<q15Comments text=""/>
<q16 listEntry="No" listEntryId="239128"/>
<q16Comments text=""/>
<q17 listEntry="No" listEntryId="239128"/>
<q17Comments text=""/>
<photo/>
<sketch/>
<item_comments text=""/>
</Item>
<Item itemPK="SurveyTab_201">
<q1 listEntry="Yes" listEntryId="239127"/>
<q1Comments text="latest test 10:19"/>
<q2 listEntry="Yes" listEntryId="239127"/>
<q2Comments text=""/>
<q3 listEntry="Yes" listEntryId="239127"/>
<q3Comments text=""/>
<q4 listEntry="Yes" listEntryId="239127"/>
<q4Comments text=""/>
<q5 listEntry="Yes" listEntryId="239127"/>
<q5Comments text=""/>
<q6 listEntry="Yes" listEntryId="239127"/>
<q6Comments text=""/>
<q7 listEntry="Yes" listEntryId="239127"/>
<q7Comments text=""/>
<q8 listEntry="Yes" listEntryId="239127"/>
<q8Comments text=""/>
<q9 listEntry="Yes" listEntryId="239127"/>
<q9Comments text=""/>
<q10 listEntry="Yes" listEntryId="239127"/>
<q10Comments text=""/>
<q11 listEntry="Yes" listEntryId="239127"/>
<q11Comments text=""/>
<q12 listEntry="Yes" listEntryId="239127"/>
<q12Comments text=""/>
<q13 listEntry="Yes" listEntryId="239127"/>
<q13Comments text=""/>
<q14 listEntry="Yes" listEntryId="239127"/>
<q14Comments text=""/>
<q15 listEntry="Yes" listEntryId="239127"/>
<q15Comments text=""/>
<q16 listEntry="Yes" listEntryId="239127"/>
<q16Comments text=""/>
<q17 listEntry="Yes" listEntryId="239127"/>
<q17Comments text=""/>
<photo/>
<sketch/>
<item_comments text=""/>
</Item>
<surveyorComments0 text="10:19 test"/>
<surveyorName text="N"/>
<surveyorSig opFile="D:\Sites\WebApp_eden\Output\2100\XMLSurvey\Attachments\5b2fd203-77ed-4165-a72c-ba82736df2ab.png"/>
</Results>
</Report>
</magic5Out>
4

1 に答える 1

0

SimpleXML の使用

以下は XML ファイルです。

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

<?php
$xml = simplexml_load_file("test.xml");

echo $xml->getName() . "<br />";

foreach($xml->children() as $child)
  {
  echo $child->getName() . ": " . $child . "<br />";
  }
?>

上記のコードの出力は次のようになります: note to: Tove from: Jani 見出し: Reminder body: Don't forget me this week!

于 2012-08-03T08:59:43.680 に答える