2013-04-23 44 views
0

我有一個來自PBX系統的大量呼叫錄音,我需要將它們分類到更易於管理的文件夾中。PHP腳本將文件的大文件夾分爲基於日期的子文件夾

作爲一個linux noob的一點,我將如何搜索指定的文件夾,並根據文件的日期,將其移動到文件夾層次結構。

示例我以2013/04/23作爲文件夾結構。

然後我有一個日期文件作爲

20130403-blah283.mp3 20130403-blah284.mp3 20130403-blah285.mp3 20130403-blah286.mp3 20130403-blah287.mp3

等。任何幫助,將不勝感激。 !

+2

聽起來像個好主意。什麼是問題? – mzedeler 2013-04-23 20:56:36

回答

0

這可能會給你一個起點:如果存在

  • 拷貝文件
    1. 獲得文件通過文件
    2. 迭代
    3. 創建新的目錄/ FILE_NAME
    4. 創建目錄刪除舊文件

    型號:

    <?php 
    $base_path = "/PATH_TO_FILES/"; 
    //$files = glob($base_path."*.mp3"); 
    $files = array('20130403-blah283.mp3','20130403-blah284.mp3','20130403-blah285.mp3','20130403-blah286.mp3','20130403-blah287.mp3'); // for testing 
    
    foreach($files as $file){ 
        $pieces = explode("-",$file); 
        $new_filename = $pieces[1]; 
        $timestamp = $pieces[0]; 
        $directory = substr($timestamp,0,4)."/".substr($timestamp,4,2)."/".substr($timestamp,6)."/"; 
        if(!is_dir($base_path.$directory)){ 
         mkdir($directory,0777); 
        } 
        copy($base_path.$file,$base_path.$directory.$new_filename); 
        //unlink($base_path.$directory.$new_filename); // DELETES OLD FILE ONLY UNCOMMENT WHEN YOUR READY! 
    } 
    
  • 相關問題