📅  最后修改于: 2023-12-03 14:45:13.704000             🧑  作者: Mango
natsort()函数是 PHP中的 ArrayIterator 类方法之一。该方法可以对数组进行自然排序,也就是按照人们使用自然语言表达的顺序进行排序。例如,对于字符串 "file11.txt" 和 "file2.txt",传统的排序方法会将它们排成: "file11.txt","file2.txt" 的顺序,而自然排序会将它们排成 "file2.txt", "file11.txt" 的顺序。
public void ArrayIterator::natsort ( void )
natsort()函数没有返回值,但会直接在原数组上进行排序。
$array = array('file1.txt', 'file12.txt', 'file3.txt', 'file2.txt');
$iterator = new ArrayIterator($array);
$iterator->natsort();
foreach ($iterator as $item) {
echo $item . "\n";
}
输出结果为:
file1.txt
file2.txt
file3.txt
file12.txt
natsort() 函数仅能按照单个字符串进行排序,对于多维数组,需要使用 array_walk_recursive 函数进行遍历和排序。
如果需要排序时考虑大小写问题可以使用 natsort() 的「natcasesort」函数,该函数与 natsort() 不同之处在于不区分大小写。