Php 先用下划线对数组值排序
我有一个值数组键并不重要: $Array=arrayFile01、File02、File00、\u File03 我想按值对此进行排序,以匹配我的Windows文件系统,例如:Php 先用下划线对数组值排序,php,arrays,sorting,Php,Arrays,Sorting,我有一个值数组键并不重要: $Array=arrayFile01、File02、File00、\u File03 我想按值对此进行排序,以匹配我的Windows文件系统,例如: Array ( [3] => _File03 [2] => File00 [0] => File01 [1] => File02 ) 我尝试了一个ort$数组,但这给了我: Array ( [2] => File00 [0] => File01 [1] => File02
Array ( [3] => _File03 [2] => File00 [0] => File01 [1] => File02 )
我尝试了一个ort$数组,但这给了我:
Array ( [2] => File00 [0] => File01 [1] => File02 [3] => _File03 )
可以先用下划线排序吗?试试这个。。它起作用了
<?php
$array = array("File01","File02","File00","_File03");
function sortUnderscoreToFront($a, $b) {
if (substr($a, 0, 1) == '_' || substr($b, 0, 1) == '_') {
return ((substr($a,0,1)=='_')?-1:1);
}
return strcmp(strval($a), strval($b));
}
usort($array, 'sortUnderscoreToFront');
echo "<pre>";
print_r($array)."</pre>";
?>
尝试ksort函数使用一个小的自定义比较函数sort。如果您查找,您将找到。一个简单的谷歌搜索提供了我重复的答案with@RiggsFolly我之前看到过,但没有应用逻辑。谢谢你的提示:谢谢你的提示。欢迎。。。