php include_once反向alphabaticly?

时间:2013-02-07 23:44:08

标签: php

我目前正在使用这条代码将新闻源加载到我的网页,为每篇文章添加一个新的html文件,如何按反向字母顺序包含文件,以便2013-02-07在2013-02之前-08

<?php 
   foreach (glob("news/*.html") as $filename)
{
    include_once $filename;
}  ?>  

1 个答案:

答案 0 :(得分:4)

$files = glob('news/*.html');
rsort($files);
foreach ($files as $f) {
    include $f;
}

这实际上是一个反向词典排序(因为文件名是字符串),但幸运的是在这种情况下,因为日期是从最高到最低的顺序。更多信息:rsort

注意:我假设您的日期格式为YYYY-MM-DD。如果它们的格式没有前导零,则此解决方案将无效。您必须从每个文件名中提取日期,将其更改为某种中间类型(unix时间戳或按字典顺序排序的字符串),然后对其进行排序。例如,'2013-3-1' > '2013-12-1'被视为true,但'2013-03-01' > '2013-12-01'为false。