Php 如何翻转数组的值?

Php 如何翻转数组的值?,php,Php,我有这个阵列: Array ( [501] => 115 [500] => 294 [499] => 155 最后一个值155应与键501匹配。本质上,我需要在保留键顺序的同时翻转值。我已经看过了,唯一能找到的是array\u reverse,这没用。我需要把这个数组拆开,自己做,还是有一个本机PHP函数来做 下面是我使用array\u reverse($myOldArray) 我需要数组键501来匹配155。使用两次: 获取一个输入数组并返回一个元

我有这个阵列:

Array
(
    [501] => 115
    [500] => 294
    [499] => 155
最后一个值155应与键501匹配。本质上,我需要在保留键顺序的同时翻转值。我已经看过了,唯一能找到的是
array\u reverse
,这没用。我需要把这个数组拆开,自己做,还是有一个本机PHP函数来做


下面是我使用
array\u reverse($myOldArray)

我需要数组键501来匹配155。

使用两次:

获取一个输入数组并返回一个元素顺序颠倒的新数组

第一次调用会反转您的值。第二种方法更改键和值,使其符合您所需的顺序。

使用两次:

获取一个输入数组并返回一个元素顺序颠倒的新数组

第一次调用会反转您的值。第二种方法更改键和值,使它们符合您想要的顺序。

试试这个

$l = sizeof($arr);
for($i = 0; $i < (int) ($l/2); $i++) {
    $temp = $arr[i];
    $arr[$i] = $arr[$l-$i];
    $arr[$l-$i] = $arr[$i];
}
$l=sizeof($arr);
对于($i=0;$i<(int)($l/2);$i++){
$temp=$arr[i];
$arr[$i]=$arr[$l-$i];
$arr[$l-$i]=$arr[$i];
}
试试这个

$l = sizeof($arr);
for($i = 0; $i < (int) ($l/2); $i++) {
    $temp = $arr[i];
    $arr[$i] = $arr[$l-$i];
    $arr[$l-$i] = $arr[$i];
}
$l=sizeof($arr);
对于($i=0;$i<(int)($l/2);$i++){
$temp=$arr[i];
$arr[$i]=$arr[$l-$i];
$arr[$l-$i]=$arr[$i];
}

谢谢你,约翰。我现在正在使用它,这就是为什么要给我描述键。我现在需要的是把钥匙倒过来。我已将第二个参数设置为true。让我把它取下来,看看是否有帮助。@NaN:看来你得调用两次
array\u reverse
,才能把钥匙按原来的顺序放回去。是的,这也不能满足我的需要。我将用结果编辑我的帖子。看一下array_reverse文档。第一次,他在
array\u reverse()
函数中为
$preserve\u keys
参数使用
true
来保留键顺序。第二次他只是在改变数组的顺序。谢谢约翰。我现在正在使用它,这就是为什么要给我描述键。我现在需要的是把钥匙倒过来。我已将第二个参数设置为true。让我把它取下来,看看是否有帮助。@NaN:看来你得调用两次
array\u reverse
,才能把钥匙按原来的顺序放回去。是的,这也不能满足我的需要。我将用结果编辑我的帖子。看一下array_reverse文档。第一次,他在
array\u reverse()
函数中为
$preserve\u keys
参数使用
true
来保留键顺序。第二次他只是在切换数组的顺序。
$l = sizeof($arr);
for($i = 0; $i < (int) ($l/2); $i++) {
    $temp = $arr[i];
    $arr[$i] = $arr[$l-$i];
    $arr[$l-$i] = $arr[$i];
}