Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Foreach loop menggunakan string untuk menghasilkan XML

foreach dapat mengulangi array atau objek apa pun yang mengimplementasikan traversable. Hasil dari PDOStatement::fetch() adalah record/baris. Cukup berikan pernyataan untuk foreach.

foreach($statement as $row) { ...   

API yang lebih baik untuk dump seperti itu adalah XMLWriter . Itu menulis hasilnya langsung ke aliran, tanpa menyimpan seluruh dokumen dalam memori terlebih dahulu. Menggunakan XML API akan menangani pelolosan sesuai kebutuhan juga. Ini contoh kecilnya:

$statement = [
  [ 'name' => 'one', 'location' => '...', /* ... */],
  [ 'name' => 'two', 'location' => '...', /* ... */]
];

$xmlWriter = new XMLWriter();
$xmlWriter->openUri('php://stdout');

$xmlWriter->startDocument();
$xmlWriter->setIndent(2);
$xmlWriter->startElement('markers');
foreach ($statement as $row) {
  $xmlWriter->startElement('marker');
  $xmlWriter->writeAttribute('name', $row['name']);
  /* other attributes ... */
  $xmlWriter->endElement();
}
$xmlWriter->endElement();
$xmlWriter->endDocument();

Keluaran:

<?xml version="1.0"?>
<markers>
 <marker name="one"/>
 <marker name="two"/>
</markers>

Di DOM Anda membuat, menambahkan, dan mengonfigurasi node. Berikut adalah contoh kecilnya:https://stackoverflow.com/a/21760903/2265374




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:Menghitung sisa hari langganan berdasarkan pembayaran

  2. mysql PILIH * WHERE nilai =$row['item']

  3. Cara Memperbaiki Error:MySQL shutdown tiba-tiba di Xampp karena Plugin 'Aria'

  4. Karakter buruk saat mencetak teks dari utf8_unicode_ci tabel Mysql

  5. MariaDB - INNODB melewatkan urutan angka sambil membuat catatan tambahan - mengapa?