поэтому у меня есть два массива. один из них выглядит следующим образом (это значение или число элементов могут меняться):PHP - сортировка элементов массива на основе элементов другого массива :)
array('4dec' , 'def3', 'a3d6', 'd12f');
и другой:
array(array('id' => 'd12f', 'name' => 'John'),
array('id' => 'a5f1', 'name' => 'Kathy'),
array('id' => 'def3', 'name' => 'Jane'),
array('id' => 'a3d6', 'name' => 'Amy'),
array('id' => '4dec', 'name' => 'Mary'),
array('id' => 'ecc2', 'name' => 'Fred'));
(это не следует изменять, элементы и значения одинаковы каждый раз).
Обратите внимание, что первый имеет несколько элементов со второго. Как я могу отсортировать второй массив на основе элементов с первого?
поэтому в основном, в этом случае второй массив должен стать:
array(array('id' => '4dec', 'name' => 'Mary'),
array('id' => 'def3', 'name' => 'Jane'),
array('id' => 'a3d6', 'name' => 'Amy'),
array('id' => 'd12f', 'name' => 'John'),
array('id' => 'a5f1', 'name' => 'Kathy'),
array('id' => 'ecc2', 'name' => 'Fred'));
(элементы, которые существуют в 1-ый перемещаются в верхней части, в том же порядке, что и 1, а остальные оставлено в покое).
Всегда ли существуют свойства 'id' и 'name' для массива данных? Если это так, мы можем отбросить эти явные имена ключей и использовать первый массив как индекс ко второму, без необходимости сортировки. –