SELECTクエリの実行後にMYSQL結果セットから直接XMLを作成する組み込み関数がある場合はどうすればよいですか?
質問する
22297 次
3 に答える
3
私はこれを書いたばかりで、id searchを考えて、他の誰かが書いたかどうかを確認しました。受け入れられた回答のチュートリアルよりも単純に見えます。私の$resultsは$result= mysql_query($ query、$ link);から来ています。
$xmlDom = new DOMDocument();
$xmlDom->appendChild($xmlDom->createElement('results'));
$xmlRoot = $xmlDom->documentElement;
while ( $row = mysql_fetch_row($result) )
{
$xmlRowElementNode = $xmlDom->createElement('row');
$i=0;
for($i=0;$i<mysql_num_fields($result);$i++)
{
$xmlRowElement = $xmlDom->createElement(mysql_field_name($result,$i));
$xmlText = $xmlDom->createTextNode($row[$i]);
$xmlRowElement->appendChild($xmlText);
$xmlRowElementNode->appendChild($xmlRowElement);
}
$xmlRoot->appendChild($xmlRowElementNode);
}
header('Content-type: text/xml');
echo $xmlDom->saveXML();
これにより、XMLが次の形式で発行されます。
<results>
<row1>
<fieldname1>value</fieldname1>
<fieldname2>value</fieldname2>
<fieldname3>value</fieldname3>
<fieldname4...>value</fieldname4...>
</row1>
<row2>
<fieldname1>value</fieldname1>
<fieldname2>value</fieldname2>
<fieldname3>value</fieldname3>
<fieldname4...>value</fieldname4...>
</row2>
<row3...>
<fieldname1>value</fieldname1>
<fieldname2>value</fieldname2>
<fieldname3>value</fieldname3>
<fieldname4...>value</fieldname4...>
</row3...>
</results>
SELECTクエリの場合。
于 2013-06-24T22:39:14.587 に答える
2
SELECTクエリの実行後にMYSQL結果セットから直接XMLを作成する組み込み関数はありません。
このためのコードを書く必要があります
いくつかの素晴らしいチュートリアルはこれです。
http://www.codediesel.com/php/converting-mysql-queries-to-xml/
于 2012-09-25T05:37:33.937 に答える
1
通常、MySQLの結果は配列またはオブジェクトとして返され、XMLまたは別の形式に変換できます。ここで説明されているSimpleXMLを使用できます:配列をSimpleXMLに変換する方法
于 2012-09-25T05:32:22.833 に答える