1=>america,2=>India,3=>england
Above is my associative array. How can I bring 3=>england to front of the array?
Use array_pop and array_unshift .
$lastItem = array_pop($array);
array_unshift($array, $lastItem);
You can use the array_unshift
function for that.
$array = array('americ', 'India');
array_unshift($array, 'englans');
print_r($array);
Output:
Array
(
[0] => englans
[1] => americ
[2] => India
)
如果要保留数组键,请使用array_slice(,,,TRUE)
。
$array = array_slice( $array, -1, 1, TRUE ) + array_slice( $array, 0, -1, TRUE );
$temp = myArray[3];
$myArray[3] = $myArray[2];
$myArray[2] = $myArray[1];
$myArray[1] = $temp;
您可以使用array_reverse
,您可以在http://php.net/manual/en/function.array-reverse.php找到的文档。
krsort($myArray, SORT_NUMERIC)
You can use array_pop
and array_unshift
for this:
$last = array_pop($array);
array_unshift($array, $last);
I think he wants to have element 3=>england to the front so he can use it with foreach and the rest of the array has to stay on the same place
than he wants this result
$array[1] = 'america';
$array[2] = 'India';
$array[3] = 'england';
$new_array[3] = $array[3];
$new_array[1] = $array[1];
$new_array[2] = $array[2];
print_r($new_array);
there is probably a function for but i cant find it so i made one
function placeLastToFirst($array){
$newArray = array();
$newArray[count($array)] = $array[count($array)];
for($i = 1;$i < count($array);$i++){
$newArray[$i] = $array[$i ];
}
return $newArray;
}
you have to look out because this function will only work if the array begins with 1 (normal arrays begin with 0). In that case you can use this one
function placeLastToFirst($array){
$newArray = array();
$newArray[count($array)-1] = $array[count($array)-1];
for($i = 0;$i < count($array)-1;$i++){
$newArray[$i] = $array[$i];
}
return $newArray;
}
$contractTypes = array('' => 'All') + $contractTypes;
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.