2016-01-26 140 views
0

我有這樣如何按鍵排序數組值?

<?php 
$sliders=array(
1=>array('url'=>"url1.com",'image'=>"img1.jpg"), 
2=>array('url'=>"url2.com",'image'=>"img2.jpg"), 
3=>array('url'=>"url3.com",'image'=>"img3.jpg"), 
4=>array('url'=>"url4.com",'image'=>"img4.jpg"), 
5=>array('url'=>"url5.com",'image'=>"img5.jpg") 
); 
foreach($sliders as $sKey=>$sVal) 
{ 
    echo $sKey.'=>'.$sVal['url'].' image=>'.$sVal['image'].'<br>'; 
} 
?> 

我的排序鍵部分是

$sort[]='2,4,5,3,1'; 

而且我想造成這樣的。

array(
1=>array('url'=>"url2.com",'image'=>"img2.jpg"), 
2=>array('url'=>"url4.com",'image'=>"img4.jpg"), 
3=>array('url'=>"url5.com",'image'=>"img5.jpg"), 
4=>array('url'=>"url3.com",'image'=>"img3.jpg"), 
5=>array('url'=>"url1.com",'image'=>"img1.jpg")); 

我該如何排列這樣的數組?

謝謝。

回答

2

我不能相信你沒有發現這個自己...

<?php 
$newArray = array(); 

$sortArray = explode(',', $sort[0]); 
$i = 1; 
foreach ($sortArray as $s) { 
    if (isset($sliders[$s])) { 
     $newArray[$i] = $sliders[$s]; 
     $i++; 
    } 
} 
+0

這是好的,但關鍵應該從1開始 – MGM

+1

我認爲這是一個錯字。爲什麼不可能從零開始?無論如何:更新了片段。 – Blaatpraat