跳到主要內容

發表文章

目前顯示的是 6月, 2020的文章

php遞迴刪除資料夾及資料夾內容function->Xoops-教學撰寫:徐嘉裕Neil hsu

如果用PHP函數刪除目錄若目錄中有檔案,則會刪除失敗,使用rmdir()也只能刪空目錄,有資料的目錄是無法刪除,所以必須要先用程式吧目錄內的檔案全部刪除,最後再刪除目錄,這裡分享一個好用的遞迴刪除目錄及目錄內容的function,另外還加上了若刪除失敗則更改目錄檔名的function,兩個一起使用就沒問題了,CODE如下: 1、吧以下兩個function貼到Xoops模組的function.php裡面 //變更資料夾檔名 function changedirectory($changedate) { $date=date("Ymd"); if(!empty(rename($changedate, $changedate."_bak_{$date}"))) return true; } //刪除目錄包含內容物件 function fileunlink_r($from) { if (!file_exists($from)) {return false;} $dir = opendir($from); while (false !== ($file = readdir($dir))) { if ($file == '.' OR $file == '..') {continue;} if (is_dir($from . DIRECTORY_SEPARATOR . $file)) { fileunlink_r($from . DIRECTORY_SEPARATOR . $file); } else { unlink($from . DIRECTORY_SEPARATOR . $file); } } if(!empty(rmdir($from))) $returnvar=true; closedir($dir); return $returnvar; } 2、在執行刪除的php上引入這兩支php函式 //刪除資料夾及底下資料($from為刪除檔案目錄的實體路徑) $Filevar=fileunlink_r($

升級upload 0.34的方法class.upload.php-教學撰寫:徐嘉裕Neil hsu

class.upload.php是一套超好用的PHP上傳檔案套件程式,能上傳圖檔及檔案,也能多檔上傳,本次心得記錄主要以舊版的class.upload.php升級到class.upload.php0.34版的修改紀錄為主,若要查詢class.upload.php如何使用可以去Google一下有很多教學喔! 首先去verot官網下載class.upload.php套件回來,選擇最新的0.34版 網址: https://www.verot.net/home.htm 下載回來後解壓縮,吧class.upload.php-master\class.upload.php-master\ src   <- 資料夾裡面的 ->class.upload.php ->lang 複製起來,貼到您網站或模組原本放置class.upload.php檔案的目錄位置覆蓋舊檔 然後在網站或模組找到引入class.upload.php程式上傳檔案function的地方(上傳參數設定那),裡面有一個類別為 $pic = new Upload($_FILES['upfile'], 'zh_TW'); 全部替換為 $pic = new \Verot\Upload\Upload($_FILES['upfile']); 這樣就完成upload 0.34的升級了,經測試原本中文檔名會上傳失敗的問題在upload 0.34都排除了,而且支援php7.3,真的非常好用,有需要的朋友參考看看! 工作心得撰寫: 徐嘉裕 Neil hsu