2016-09-04 137 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

的[I如何排序在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); 

結果:

陣列( [1] => 2500 [3] => 2018)