對不起,接下來的漫長的帖子...PHP訂單文件夾和文件目錄中的自定義爲了
...我已經尋找了幾天現在如何做到這一點,我似乎無法繞到我的頭如何做到這一點。 我有一個包含12個文件夾的目錄,一年的每月一個(1月,2月等...)
在每個文件夾中,我有一定數量的圖像文件,桌面背景。每個文件都根據它所屬的月份,它所在月份的年份,是否有日曆以及它的分辨率大小來命名。 例如,Jan文件夾將具有命名約定的文件: January2013_nocal_2560x1440; January2012_nocal_2560x1440; etc ...
對於當前的月份,如5月,還會有文件名爲: May2013_calendar_2560x1440; May2013_calendar_1920x1200; etc ...
我想要做的是創建一個文件夾的列表,按照每個月在一年後的順序,從當前月份開始並及時反向工作。在每個月下,我想列出該文件夾中正確年份的文件。
這是我想輸出。 當月:
<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
和其他資源,以讀/列出每個文件夾和文件,但無法弄清楚如何排序的一切,我怎麼想它。
有關如何做到這一點的任何意見將不勝感激。編輯: 我一直在尋找無效的過去幾天。我很欣賞迄今爲止收到的所有答覆,但他們似乎都沒有真正做我想做的事情。 這是我迄今爲止的基本代碼,它拉出了我想要排序和循環的所有文件夾/文件。
$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 />";
}
}
}
}
}
我只是不確定該從哪裏出發。
在這個網站上,你需要給某種最初的努力來發布的你正在嘗試做什麼的代碼示例。然後人們可以識別並幫助糾正你的錯誤。請發佈你的初始php代碼,即使只是一個簡單的循環 – Zak 2013-05-02 18:14:17
排序功能後,你得到的文件夾名稱http://stackoverflow.com/questions/12424968/php-re-order-array-of-month-names – Fabi 2013-05-02 18:34:34
有你已經看到了? http://stackoverflow.com/questions/884974/sort-and-display-directory-list-alphabetically-using-opendir-in-php – reikyoushin 2013-05-02 20:14:13