Мне необходимо отсортировать массив по значениям другого массива, где массивы разной длины.
Массив (получен по LDAP), который необходимо отсортировать по должности(title) согласно второму массиву.
Первый массив:
Array
(
[0] => 9
[1] => Array
(
[cn] => Array
(
[count] => 1
[0] =>Иванов Иван Иванович
)
[0] => cn
[sn] => Array
(
[count] => 1
[0] =>Иванов
)
[1] => sn
[title] => Array
(
[count] => 1
[0] => Руководитель
)
[2] => title
[physicaldeliveryofficename] => Array
(
[count] => 1
[0] => 7-02
)
[3] => physicaldeliveryofficename
[telephonenumber] => Array
(
[count] => 1
[0] => 22-22-22
)
[4] => telephonenumber
[givenname] => Array
(
[count] => 1
[0] => Иван
)
[5] => givenname
[streetaddress] => Array
(
[count] => 1
[0] => Адрес
)
[6] => streetaddress
[useraccountcontrol] => Array
(
[count] => 1
[0] => 512
)
[7] => useraccountcontrol
[mail] => Array
(
[count] => 1
[0] => ivanoviv@mail.local
)
)
[2] => Array
(
[cn] => Array
(
[count] => 1
[0] => Петров Петр Петрович
)
[0] => cn
[sn] => Array
(
[count] => 1
[0] => Петров
)
[1] => sn
[title] => Array
(
[count] => 1
[0] => Заместитель руководителя
)
[2] => title
[physicaldeliveryofficename] => Array
(
[count] => 1
[0] => 2-03
)
[3] => physicaldeliveryofficename
[telephonenumber] => Array
(
[count] => 1
[0] => 33-33-33
)
[4] => telephonenumber
[givenname] => Array
(
[count] => 1
[0] => Петр
)
[5] => givenname
[streetaddress] => Array
(
[count] => 1
[0] => Адрес
)
[6] => streetaddress
[useraccountcontrol] => Array
(
[count] => 1
[0] => 512
)
[7] => useraccountcontrol
[mail] => Array
(
[count] => 1
[0] => PetrPP@mail.local
)
)
[3] => Array
(
[cn] => Array
(
[count] => 1
[0] => Сидоров Сидор Сидорович
)
[0] => cn
[sn] => Array
(
[count] => 1
[0] =>Сидоров
)
[1] => sn
[title] => Array
(
[count] => 1
[0] => Заместитель руководителя
)
[2] => title
[physicaldeliveryofficename] => Array
(
[count] => 1
[0] => 3-03
)
[3] => physicaldeliveryofficename
[telephonenumber] => Array
(
[count] => 1
[0] => 44-44-44
)
[4] => telephonenumber
[givenname] => Array
(
[count] => 1
[0] => Сидор
)
[5] => givenname
[streetaddress] => Array
(
[count] => 1
[0] => Адрес
)
[6] => streetaddress
[useraccountcontrol] => Array
(
[count] => 1
[0] => 512
)
[7] => useraccountcontrol
[mail] => Array
(
[count] => 1
[0] => sidorovss@mail.local
)
)
...........
Второй массив:
$USERGRADE = array(
'Pуководитель',
'Заместитель руководителя',
'Помощник руководителя',
'Начальник отдела',
'Заместитель начальника отдела',
'Главный специалист,
'Главный специалист 1 категории',
.....
);
Ключ для массива формирую через функцию: array_flip
$sort = array_flip($$USERGRADE );
Подскажите куда копать?
array_column - не поддерживается php5.4
Или подскажите, как объединить эти два массива, чтобы в дальнейшем через usort произвести сортировку. Например:
function usort_title ($a,$b) {
if($a['title']===$b['title']) return 0;
return$a['title'] > $b['title'] ? 1: -1;
}
usort ($massiv_name,'usort_title');