Mysql
 sql >> база данни >  >> RDS >> Mysql

Цикъл Foreach, използващ низ за извеждане на XML

foreach може да повтори всеки масив или обект, който реализира преминаване. Резултатът от PDOStatement::fetch() е записът/редът. Просто предоставете изявлението на foreach.

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

По-добрият API за изхвърляния като този е XMLWriter . Той записва резултата директно в поток, без първо да съхранява целия документ в паметта. Използването на XML API също ще се погрижи за избягването, ако е необходимо. Ето един малък пример:

$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();

Изход:

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

В DOM създавате, добавяте и конфигурирате възли. Ето малък пример: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. Тестването на PHPUnit НЕ УСПЕШВА САМО при посещение на основната страница ( visit('/') ) в Laravel 5

  2. Неправилна стойност на низа при опит за вмъкване на UTF-8 в MySQL чрез JDBC?

  3. Сортиране на колона низ, съдържаща числа в SQL?

  4. PHP MySQL пагинация с произволен ред

  5. PDO - lastInsertId() за заявка за вмъкване с множество редове