노드 이름을 계속 변경하지 않고도 XML 객체를보다 동적으로 채울 수있는 방법을 찾으려고합니다. 나는이와 비슷한 코드 :루프에 XML 채우기
편집 : 실제 DB 구조를 인라인으로 데이터를 변경 :
$query = ("Select order_id, created_on, updated_on, status from table orders;");
// Execute query
$result = mysql_query($query, $link) or die("Could not complete database query");
// Populate array
while(($resultArray[] = mysql_fetch_assoc($result)) || array_pop($resultArray));
$doc = new DOMDocument();
$doc->formatOutput = true;
$r = $doc->createElement("data");
$doc->appendChild($r);
foreach($resultArray as $record)
{
$b = $doc->createElement("record");
$record1 = $doc->createElement("Order");
$record1->appendChild(
$doc->createTextNode($record['order_id'])
);
$b->appendChild($record1);
$record2 = $doc->createElement("Created");
$record2->appendChild(
$doc->createTextNode($record['created_on'])
);
$b->appendChild($record2);
$record3 = $doc->createElement("Updated");
$record3->appendChild(
$doc->createTextNode($record['updated_on'])
);
$b->appendChild($record3);
$record4 = $doc->createElement("Status");
$record4->appendChild(
$doc->createTextNode($record['status'])
);
$b->appendChild($record4);
$r->appendChild($b);
}
echo $doc->saveXML();
// Close connection
mysql_close($link);
이 괜찮습니다,하지만 난에있는 쿼리에서 3 열을 추가하려면 또한 루프에 추가하십시오. 실제로이 작업을 수행하는 더 좋은 방법이 있다고 확신합니다.
어떤 조언이 필요합니까?
감사합니다.
일부 샘플 xml, 찾고있는 출력을 보여줍니다. –
@Saad, 업데이트 조언 해주셔서 감사합니다. – jared