Я создаю поиск каталогов LDAP с использованием PHP, и мы используем Novell в качестве нашего LDAP-сервера. Я могу успешно искать и возвращать результаты; это текущий фильтр, который я запускаю, (&(FERPA=N)(|(uid=*searchphrase*)(sn=*searchphrase*)(fullName=*searchphrase*)(telephoneNumber=*searchphrase*)))
.
Я хочу иметь возможность сортировать по имени или переменной LDAP sn
. Я мог бы сортировать его через PHP, но я хочу, чтобы это было последним средством. Есть ли способ сортировки результатов на основе столбца. Например, в SQL вы можете сортировать на основе такого столбца, SELECT * FROM TABLE WHERE COL='criteria' ORDER BY COL;
Есть ли что-то подобное, что можно сделать с помощью запросов LDAP?
Клиентским приложениям LDAP, которые требуют, чтобы результаты запросов на поиск, которые нужно упорядочить, повторяемым образом, должны использовать расширение сортировки на стороне сервера . В большинстве случаев использование расширения на стороне сервера требует, чтобы кодер приложения информировал администраторов каталогов, чтобы можно было настроить правильную индексацию.
Насколько я знаю, нет способа сортировать результаты с помощью фильтра LDAP. Весь фильтр делает, ограничивает, какие записи возвращаются.
С помощью php вы будете запускать поиск, а затем сортировать результат с помощью http://us3.php.net/manual/en/function.ldap-sort.php
Кроме того, вы можете прочитать все записи в массиве, а затем запустить одну из других функций сортировки php. http://us1.php.net/manual/en/array.sorting.php