php xpath отсортировать в алфавитном порядке по полю

Я хотел бы иметь более точную алфавитную сортировку для xpath. Моя текущая система сортирует только первые два символа поля... Я бы хотел, чтобы все поле было упорядочено, если это возможно.

foreach(range('A','Z') AS $firstletter) {
     foreach(range('a','z') AS $secondletter) {
              $letters = $firstletter.$secondletter;
              if($item->xpath("/Entries
                                  /Entry[
                                     starts-with(
                                        Field42,
                                        '".$letters."'
                                     )
                                   and 
                                     Field380 = 'Okay'
                                  ]")) {

Записи Field42 — это фамилии (например, Браун, Браунштайн, Браунвуд, Бирнс и т. д.).


person Jeffrey    schedule 08.04.2011    source источник


Ответы (1)


Я не думаю, что вы сможете сортировать с помощью XPath (его цель состоит в том, чтобы выбрать данные, а не сортировать их).

Итак, почему бы не сделать это на чистом PHP:

  • Сначала загрузите все свои узлы в массив PHP.
  • And, then, sort that array using one of the functions provided by PHP
person Pascal MARTIN    schedule 08.04.2011
comment
+1 Собственно говоря, наборы узлов представляют собой неупорядоченный набор узлов без дубликатов - person ; 08.04.2011