PHP按数字名称对数组排序

杰兹·D

使用Codeigniter创建网站。我已经使用codeigniters目录助手来获取目录中所有文件的文件名:

$this->load->helper('directory'); $files = directory_map('directory_name/', 1);

所有这些都按预期工作,并且我得到目录中文件的列表-print_r($ files)证明了这一点。

但是,文件名都以数字开头:

 1_firstfile.doc  
  2_nextfile.doc  
  3_another.exe  
  ...   ...  
  11_thisfile.txt  
  12_filename.pdf

我的问题是文件以我想要的不同顺序返回。我希望按照上面的顺序返回它们,但是相反,它们是这样返回的:

 1_firstfile.doc    
  11_thisfile.txt  
  12_filename.pdf  
  2_nextfile.doc   
  3_another.exe 

显然,它们是按字母顺序返回的,但是我需要按数字顺序返回它们。

我已经尝试过了,$files = sort($files,1)但这似乎只是清空数组。因此,除了更改文件名之外,如何获取数组以所需的顺序排列它们?

马克·贝克

所有sort()函数都是“按引用传递”,因此实际上它直接修改了参数,返回成功或失败状态,因此

$files = sort($files)

进行排序$files,然后将成功状态(布尔值true / false)分配给$files

简单地做

sort($files)

请注意,要按文件名的数字部分进行干净排序,应将标志的sort()SORT_NATURALnatsort()一起使用

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

按属性对数组排序

来自分类Dev

按名称对数组中的数组进行排序

来自分类Dev

JAVA按数字顺序对数组排序

来自分类Dev

PHP:按值长度对数组排序

来自分类Dev

PHP按名称对数组进行排序

来自分类Dev

PHP:按爆炸值对数组排序

来自分类Dev

用PHP对数组进行排序-数字排序

来自分类Dev

在PHP中按多个值对数组排序

来自分类Dev

按数字然后按字母对数组列表进行排序

来自分类Dev

按费用和名称对数组排序

来自分类Dev

如何从PHP中的Key按升序对数组进行排序?

来自分类Dev

PHP:按字母顺序对数组排序

来自分类Dev

按日期对数组排序

来自分类Dev

在数组perl中按数字对数字和按字母顺序排序

来自分类Dev

如何按最接近的数字对数组排序

来自分类Dev

按数字字段按降序或升序对数组Angular 7进行排序

来自分类Dev

PHP-尝试按数字字段对数组排序

来自分类Dev

为什么javascript不按数字顺序对数字数组排序?

来自分类Dev

按值对数组排序

来自分类Dev

在PHP中按名称对数组进行排序

来自分类Dev

按委托对数组排序

来自分类Dev

按值对数组排序

来自分类Dev

在PHP中对数组进行排序-数字排序

来自分类Dev

PHP排序按值ASC对数组项进行排序?

来自分类Dev

如何按多维数组的名称而不是值对数组进行排序?

来自分类Dev

按数组元素对数组进行排序

来自分类Dev

PHP:按字母顺序对数组排序

来自分类Dev

PHP中按日期对数组进行排序

来自分类Dev

二维数组 - 按行对数字进行排序