M1k*_*1ke 14 php arrays sorting
PHP 5.4引入了有用的SORT_FLAG_CASE,使任何其他搜索大小写不敏感.不幸的是,这在PHP 5.3或更低版本中不可用,所以我想知道以下数组如何:
array('a'=>2,'b'=>4,'A'=>1,'B'=>3);
Run Code Online (Sandbox Code Playgroud)
可以分为:
array('A'=>1,'a'=>2,'B'=>3,'b'=>4);
Run Code Online (Sandbox Code Playgroud)
通常的ksort()
功能将其分类为:
array('A'=>1,'B'=>3,'a'=>2,'b'=>4);
Run Code Online (Sandbox Code Playgroud)
M1k*_*1ke 28
对其中一个PHP函数引用页面的注释向我指出了该uksort()
函数; 这个(以及uasort()
按值而不是按键排序的功能)允许比较算法用于快速排序以便由用户写入.
将它与非常简单的strcasecmp()
函数(比较两个字符串并返回<0表示> b,> 0表示> b)给出:
uksort($array, 'strcasecmp');
Run Code Online (Sandbox Code Playgroud)
要轻松达到以下效果:
ksort($array,SORT_STRING | SORT_FLAG_CASE);
Run Code Online (Sandbox Code Playgroud)
在PHP 5.3或更低版本.