我做了一个字谜游戏机,并且有一系列正面匹配。麻烦的是它们都以不同的顺序排列,我希望能够对数组进行排序,以使最长的数组值首先出现。
有人对如何执行此操作有任何想法吗?
使用http://us2.php.net/manual/en/function.usort.php
使用此自定义功能
function sort($a,$b){ return strlen($b)-strlen($a); } usort($array,'sort');
如果要保留旧索引,请使用uasort;如果您不关心,请使用usort。
另外,我认为我的版本更好,因为usort是一种不稳定的排序。
$array = array("bbbbb", "dog", "cat", "aaa", "aaaa"); // mine [0] => bbbbb [1] => aaaa [2] => aaa [3] => cat [4] => dog // others [0] => bbbbb [1] => aaaa [2] => dog [3] => aaa [4] => cat