我需要将array
中的values
顺序反转:
// My current array looks like this
// echo json_encode($array);
{ "t" : [ 1, 2, 3, 4, 5, 6 ],
"o" : [ 1.1, 2.2, 3.3, 4.4, 5.5, 6.6 ],
"h" : [ 1.2, 2.2, 3.2, 4.2, 5.2, 6.2 ]
}
我需要反转`values`,但保留原有的`keys`,结果应该像这样:
// echo json_encode($newArray);
{ "t" : [6, 5, 4, 3, 2, 1 ],
"o" : [ 6.6, 5.5, 4.4, 3.3, 2.2, 1.1],
"h" : [ 6.2, 5.2, 4.2, 3.2, 2.2, 1.2 ]
}
我尝试过但未成功的方法:
<?php
$newArray= array_reverse($array, true);
echo json_encode($newArray);
/* The above code output (Note that the values keep order):
{
"h":[1.2, 2.2, 3.2, 4.2, 5.2, 6.2]
"o":[1.1, 2.2, 3.3, 4.4, 5.5, 6.6]
"t":[1,2,3,4,5,6]
}
*/
?>
在这里阅读了类似的问题后,我也尝试了以下方法,但没有成功:
<?php
$k = array_keys($array);
$v = array_values($array);
$rv = array_reverse($v);
$newArray = array_combine($k, $rv);
echo json_encode($b);
/* The above code change association of values = keys, output:
{ "h": [1.1, 2.2, 3.3, 4.4, 5.5, 6.6],
"o": [1,2,3,4,5,6],
"t": [1.2, 2.2, 3.2, 4.2, 5.2, 6.2]
}
?>
非常感谢您抽出时间。