Лекция: Функция array_keys
Функция array_keys() выбирает все ключи массива. Но у нее имеется дополнительный аргумент, с помощью которого можно получить список ключей элементов с конкретным значением. Синтаксис этой функции таков:
Функция array_keys() возвращает как строковые, так и числовые ключи массива, организуя все значения в виде новогомассива с числовыми индексами.
Пример 7.5.Мы записали массив языков, которые изучили. Список был длинным, и некоторые языки были записаны несколько раз. У нас возникло подозрение, что один из таких языков – Lisp. Давайте это проверим:
Пример 7.5. Применение функции array_keys()
В результате получим:
Функция array_keys(), как и две предыдущие, зависит от регистра, т.е. элементов LISP в массиве она не обнаружит.array_keys() появилась только в PHP4. В PHP3 для реализации ее функциональности нужно придумывать свою функцию.
Если есть функция для получения всех ключей массива, то можно предположить, что существует и функция для получения всехзначений массива. Действительно, она существует. Это функция array_values(массив). Все значения переданного ей массивазаписываются в новый массив, проиндексированный целыми числами, т.е. все ключи массива теряются, остаются только значения. Но вернемся к нашему примеру.
Итак, мы выяснили, что язык Lisp случайно упомянут в нашем массиве дважды. Поскольку изучить один язык дважды нельзя («учил, но забыл» не считается), то нужно как-то избавиться от повторяющихся языков. Сделать это довольно просто с помощью функцииarray_unique() .