Функция array_unique(массив) удаляет повторяющиеся значения из массива и возвращает новый массив. Таким образом, вместо нескольких одинаковых значений и их ключей мы имеем одно значение. Какой у него будет ключ? Как из нескольких ключей одинаковых элементов выбирается тот, который будет сохранен в новом массиве? Происходит следующее. Все элементы массива преобразуются в строки и сортируются. Затем обработчик запоминает первый ключ для каждого значения, а остальные ключи игнорирует.
Попробуем избавиться от повторяющихся языков в списке изученных.
<?php $langs = array("Lisp","Java","Python","Java", "PHP","Perl","Lisp"); print_r(array_unique($langs)); ?>
Получим следующее:
Array ( [0] => Lisp [1] => Java [2] => Python [4] => PHP [5] => Perl )
Далее рассмотрим задачу сортировки массива.