Простая сортировка XML по имени - PullRequest
0 голосов
/ 02 декабря 2010

Я пытаюсь отсортировать список баз данных и документов в каждой базе данных по имени базы данных.Затем распечатайте их в табличном формате

. Вот код xml

<responsedata>
<databases>
<database>
<name>Test</name>
<documents>0</documents>
</database>
−
<database>
<name>Test2</name>
<documents>0</documents>
</database>
</databases>
</responsedata>

. Вот мой текущий код, который перечисляет базы данных и документы без сортировки и распечатывает их в виде списка.

$request_url = "http://255.255.255.255/xmlfile";

$xml = simplexml_load_file($request_url)

foreach ($xml->responsedata->databases->database as $db) {

          echo"<tr><td>",$db->name,"</td><td>",$db->documents,"</td></tr>\n";
  }

//

1 Ответ

2 голосов
/ 02 декабря 2010
$dbs = array();

foreach ($xml->responsedata->databases->database as $db) {
  $dbs[(string)$db->name] = $db;
}

ksort($dbs);

foreach ($dbs as $db) {
  echo"<tr><td>",htmlentities($db->name),"</td>",
      "<td>",htmlentities($db->documents),"</td></tr>\n";
}
...