2011-05-17 43 views
0

我正在創建一個公司上傳大量圖像的php網站。我想要一個文件夾包含多達500-1000個文件,如果先前包含多於1000個文件,PHP會自動創建一個新文件夾。使用PHP上傳後自動創建目錄

例如,px300具有文件夾dir1,其中存儲500個文件,然後將創建一個新的dir2

是否有任何解決方案?

回答

0

這樣:

if ($h = opendir('/dir')) { 
    $files = 0; 
    while (false !== ($file = readdir($h))) { 
     $files++ 
    } 
    if($files > 1000){ 
    //create dir 
    mkdir('/newdir') 
    } 
} 
3

這個任務是很簡單不是需要現有的解決方案。您可以使用scandir來統計目錄中的文件數,然後使用mkdir來創建目錄。

// Make sure we don't count . and .. as proper directories 
if (count(scandir("dir")) - 2 > 1000) { 
    mkdir("newdir"); 
} 
0

您可以使用glob函數。它會返回一個匹配你的模式的數組,你可以計算出文件的數量。

1

一種常用的方法是根據文件名創建單字母目錄。如果將隨機名稱分配給文件(並且隨機名稱很好避免用戶上載中的名稱衝突),則此功能特別有效:

/files/a/c/acbd18db4cc2f85cedef654fccc4a4d8 
/files/3/7/37b51d194a7513e45b56f6524f2d51f2