2016-09-04 4 views
0

Вот эта идея: пользователь вводит свой почтовый индекс. Основанный на вставленном почтовом индексе, я получаю массив почтовых индексов (расстояние заказа).Сортировка массива другими значениями массива

Далее Я хочу заказать существующий массив почтовых индексов на основе упорядоченного массива расстояний.

Так в основном у меня есть два массива:

  1. массив, который должен быть заказан

    массив (2) { [0] => строка (4) "2018" [1] => строка (4) "2500" }

  2. Расстояние упорядоченный массив

    массив (247) { [0] => строка (4) "2000" [1] => строка (4) "2500" [2] => строка (4) "2050" [ 2] => строка (4) "2018"

В этом примере мой массив (номер 1) должны быть упорядочены следующим образом: [0] => 2500, [1] => 2018

Как я могу управлять этим?

+2

Возможный дубликат [Как я могу сортировать массивы и данные в PHP ?] (http://stackoverflow.com/questions/17364127/how-can-i-sort-arrays-and-data-in-php) –

+0

использовать rsort ($ array); – Ish

+0

@ Ish Я честно не понимаю, как это решит мою проблему. Можете ли вы предоставить дополнительную информацию? – RW24

ответ

0

Вы можете использовать array_intersect(), чтобы получить только значения второго массива, которые также находятся в первом массиве. И поскольку функция сохраняет ключи - и, следовательно, порядок - вы должны их перенумеровать.

$a1=array(2018,2500); 
$a2=array(2000,2500,2050,2018); 

$a3=array_intersect($a2 , $a1); 

echo print_r($a3,true); 

Результат:

Array ( [1] => 2500 [3] => 2018)

Смежные вопросы