数组换位有关问题

原创
2016-06-13 13:12:39 731浏览

数组换位问题

PHP code

$array = array(
   'ab'=>123,
   'ef'=>234,
   'hc'=>654
)


我现在想让hc和ab换个位置,其中包括(key和value)
换位后的结果
PHP code

$array = array(
   'hc'=>654,
   'ef'=>234,
   'ab'=>123,
)


有哪些方法能办到?
方法之一:声明一个新数组,循环$array数组,做判断来换位!

本人喜欢找更高效的方法,特来发帖求教

------解决方案--------------------
php数组排序..................
你这个例子的可以使用"krsort()".
其余的情况就不一定了.
------解决方案--------------------
$array = array(
'ab'=>123,
'ef'=>234,
'hc'=>654
);

echo "
";
print_r($array);

ksort($array,1);
print_r($array);
------解决方案--------------------
探讨

引用:

php数组排序..................
你这个例子的可以使用"krsort()".
其余的情况就不一定了.

貌似krsort不行吧,这个不是单纯的排序,而是换位

------解决方案--------------------
uksort()
自己订好规则.
------解决方案--------------------
关键是LZ你要根据什么规则来换位啊??

$array = array(
'ab'=>123,
'ef'=>234,
'hc'=>654,
'ht'=>456,
'ty'=>421,
);
那我是不是要ab hc 换位 // ef ht换位// hc ht 换位 ???
你总的有个参考吧
------解决方案--------------------
数组循环一次,O(n)复杂度,效率有什么问题?
------解决方案--------------------
我感觉foreach 就ok了 一个数组不存在什么效率问题吧
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。