0

データベースからのクエリからのデータを追加/表示し、それを XML ファイルに追加したいと考えています。例として、名前と年齢を持つ table_persons があります。その名前と年齢を取得する mysql クエリを作成します。次に、データ (人の名前と年齢) を XML ファイルに入れるだけです。

どうやってそれをしますか?それとも可能ですか?

4

2 に答える 2

0

DomDocumentfile_put_contentsを使用して XML ファイルを作成することをお勧めします。

このようなもの:

// Create XML document
$doc = new DomDocument('1.0', 'UTF-8');

// Create root node
$root = $doc->createElement('persons');
$root = $doc->appendChild($root);

while ($row = mysql_fetch_assoc($result)) {
    // add node for each row
    $node = $doc->createElement('person');
    $node = $root->appendChild($node);

    foreach ($row as $column => $value) {
        $columnElement = $doc->createElement($column);
        $columnElement = $node->appendChild($columnElement);

        $columnValue = $doc->createTextNode($value);
        $columnValue = $columnElement->appendChild($columnValue);
    }
}

// Complete XML document
$doc->formatOutput = true;
$xmlContent = $doc->saveXML();

// Save to file
file_put_contents('persons.xml', $xmlContent);
于 2012-05-03T21:17:42.500 に答える
-1
<?php
[snip] //database code here

$f = fopen('myxml.xml', 'a+');
foreach($row = mysqli_fetch_assoc($resultFromQuery))
{
    $str = "<person>
        <name>{$row['name']}</name>
        <age>{$row['age']}</age>
    </person>\n";
    fwrite($f, $str);
}
fclose($f);
?>

を使用すると仮定するとmysqli、このコードは機能します。そうでない場合は、スーツに合わせてください。fopen関数呼び出しでは、書き込みa+時に読み取り用に開くように指示し、ポインターをファイルの末尾に配置します。

幸運を祈ります。

于 2012-04-20T05:00:55.097 に答える