对于随后的冗长帖子抱歉...
我已经搜索了几天如何做到这一点,我似乎无法解决如何完成这项工作。 我有一个目录,里面有12个文件夹,一个月中的每个月(1月,2月等等)
在每个文件夹中,我有一定数量的图像文件,桌面背景。每个文件都根据它所属的月份,月份的年份,是否有日历以及它的分辨率大小来命名。 例如,Jan文件夹将包含具有命名约定的文件: January2013_nocal_2560x1440; January2012_nocal_2560x1440;等...
对于当月,例如May,还会有一些名为的文件: May2013_calendar_2560x1440; May2013_calendar_1920x1200;等...
我想要做的是按照每个月跟随的顺序创建文件夹列表,从当前月份开始,然后向后工作。在每个月,我想列出该文件夹中正确年份的文件。
这是我想输出的内容。 本月:
<a class="menuitem" href="">May 2013</a>
<ul class="list2" style="float:left">Without Calendar:
<li><a href="May/May2013_nocal_2560x1440.jpg">2560 x 1440</a></li>
<li><a href="May/May2013_nocal_1920x1200.jpg">1920 x 1200</a></li>
etc...
</ul>
<ul class="list2" style="float:right">With Calendar:
<li><a href="May/May2013_calendar_2560x1440.jpg">2560 x 1440</a></li>
<li><a href="May/May2013_calendar_1920x1200.jpg">1920 x 1200</a></li>
etc...
</ul>
以下每个月:
<a class="menuitem" href="">April 2013</a>
<ul class="list2" style="float:left">Without Calendar:
<li><a href="April/April2013_nocal_2560x1440.jpg">2560 x 1440</a></li>
etc...
</ul>
<a class="menuitem" href="">March 2013</a>
<ul class="list2" style="float:left">Without Calendar:
<li><a href="March/March2013_nocal_2560x1440.jpg">2560 x 1440</a></li>
etc...
</ul>
<a class="menuitem" href="">February 2013</a>
<ul class="list2" style="float:left">Without Calendar:
<li><a href="February/February2013_nocal_2560x1440.jpg">2560 x 1440</a></li>
etc...
</ul>
<a class="menuitem" href="">January 2013</a>
<ul class="list2" style="float:left">Without Calendar:
<li><a href="January/January2013_nocal_2560x1440.jpg">2560 x 1440</a></li>
etc...
</ul>
<a class="menuitem" href="">December 2012</a>
<ul class="list2" style="float:left">Without Calendar:
<li><a href="December/December2012_nocal_2560x1440.jpg">2560 x 1440</a></li>
etc...
</ul>
<a class="menuitem" href="">November 2012</a>
<ul class="list2" style="float:left">Without Calendar:
<li><a href="November/November2012_nocal_2560x1440.jpg">2560 x 1440</a></li>
etc...
</ul>
etc...
我希望它以日历顺序循环遍历每个文件夹,并回显2013年文件夹中的每个文件,然后再次遍历2012年的所有文件夹,依此类推。
我已经研究过scandir
,blob
,explode
以及其他资源来阅读/列出每个文件夹和文件,但无法弄清楚如何按照我想要的方式订购。< / p>
非常感谢任何有关如何做到这一点的建议。
编辑: 过去几天我一直在寻找无济于事。我很欣赏到目前为止我收到的所有回复,但他们似乎都没有真正做我想做的事情。 这是我到目前为止的基本代码,它提取了我想要排序和循环的所有文件夹/文件。
$root = $_SERVER['DOCUMENT_ROOT']."/wallpapers/";
$folders = scandir($root);
foreach ($folders as $folder) {
if(is_dir($root . "/" . $folder) && $folder != "." && $folder != ".." && $folder != "images") {
$months = array($folder);
foreach ($months as &$month) {
$files = scandir($root . $month);
foreach ($files as $file) {
if(is_file($root . $month . "/" . $file)) {
echo $month . "/" . $file . "<br />";
}
}
}
}
}
我只是不确定从哪里开始。
答案 0 :(得分:1)
您只需列出所需目录中的文件即可 然后你可以使用usort
答案 1 :(得分:0)
这可能是一个有助于您入门的示例:http://www.weberdev.com/get_example.php3?ExampleID=4959 您可能必须获取数据然后对其进行排序以进行显示。
或者看:Recursive browse all server directories and list newest created files with php