我有一个PHP数组,其中包含literal_key =>值.我需要将键和值从数组的开头移开并将其粘在最后(同时保持键).
我试过了:
$f = array_shift($fields);
array_push($fields, $f);
但这会失去关键价值.
例如:
$fields = array ("hey" => "there", "how are" => "you");
//在上面跑
这会产生:
$fields = array ("how are" => "you", "0" => "there");
(我需要保持“嘿”而没有0)任何想法?
解决方法:
据我所知,您不能使用array_push()向数组添加关联值,也不能使用array_shift()获取键. (同样适用于pop / push).快速破解可能是:
$fields = array( "key0" => "value0", "key1" => "value1");
//Get the first key
reset($fields);
$first_key = key($fields);
$first_value = $fields[$first_key];
unset($fields[$first_key]);
$fields[$first_key] = $first_value;