使用natcasesort()
时,在数组末尾有一个额外的数组键。
在我的示例中,我从目录中创建文件名数组:
if (is_dir($files_path)) {
if ($dh = opendir($files_path)) {
while (($fileName = readdir($dh)) !== false) {
if (pathinfo($fileName, PATHINFO_EXTENSION) == 'yml') {
$fileList[] = $fileName;
}
}
closedir($dh);
}
}
$fileList[] = natcasesort($fileList);
仅当对数组应用排序时会发生这种情况。
此外,如果我将最后一行写为:
$sortedFileList[] = natcasesort($fileList);
$sortedFileList
仅返回“ extra ”数组键。所以也许我的数组结构有问题?我应该只使用array_pop()
吗?
为什么是natcasesort()
或任何sort()
选项,在这种情况下会返回此值?
答案 0 :(得分:1)
log
不返回 extra 键,而是返回(按照documentation)
natcasesort
所以只需将其排序为Returns TRUE on success or FALSE on failure.