2013-01-03 38 views
0

是否有更好的(更有效的方法)使第一個和最後一個鍵交換位置在這個數組?有沒有更好的方法來重新排列這個數組?

<?php 

function jim_is_jill($user_names) { 
    $user_A = $user_names[0]; 
    $user_B = $user_names[1]; 
    $user_C = $user_names[2]; 
    $user_D = $user_names[3]; 

    $new_arr = array($user_D, $user_B, $user_C, $user_A); 

    return $new_arr; 

} 

$user_names = array('Jim', 'Josh', 'Jamie', 'Jill'); 
print_r(jim_is_jill($user_names)); 
?> 

回答

2

試試這個:

list($user_names[0],$user_names[3]) = array($user_names[3],$user_names[0]); 

一般:

list($a,$b) = array($b,$a); 

這是交換兩個最好的方式變量而不使用任何臨時變量。

你也可以做一個函數來交換任意條目:

function swap(&$arr,$x,$y) { 
    list($arr[$x],$arr[$y]) = array($arr[$y],$arr[$y]); 
} 
1

什麼只是交換他們是這樣的:

... 
$temp = $user_names[0]; 
$user_names[0] = $user_names[3]; 
$user_names[3] = $temp; 
... 
+0

EW,溫度瓦爾... –

+1

好神......你是一位難得。你是如何學習PHP的? (如果你不介意我問?) – Peter

+0

很高興幫助:)主要在學校和網絡安全工作。 – imreal

相關問題