摘要:/** * 創(chuàng)建目錄的函數(shù) * @param $dirname 目錄 * @return string 提示信息 */ function createFolder($dirname){ //當(dāng)前目錄下
/** * 創(chuàng)建目錄的函數(shù) * @param $dirname 目錄 * @return string 提示信息 */ function createFolder($dirname){ //當(dāng)前目錄下是否存在同名文件夾名稱 if(file_exists($dirname)){ return '該目錄存在相同的文件夾'; } //創(chuàng)建目錄 if(mkdir($dirname,0777,true)){ return '成功'; } return "創(chuàng)建失敗"; }/** * 讀取目錄 * @param $dirName 目標(biāo)目錄 * @return array|string 數(shù)組| 提示信息 */ function readDirectory($dirName){ if(is_dir($dirName)){ $data = opendir($dirName); $arr = []; //在使用遞歸時(shí)這里的值不會(huì)被替換掉 在php中如果存在全局變量,那么此處賦值將不影響全局變量的值。也就是說(shuō)賦值無(wú)效 global $arr; //使用關(guān)鍵字定義后。會(huì)變成全局變量,這樣php中函數(shù)的賦值。就會(huì)無(wú)效化 while($row = readdir($data)){ if($row != '.' && $row != '..'){ $lujin = $dirName.'/'.$row; //將目錄也拼接進(jìn)去 //如果是文件 if(is_file($lujin)){ $arr['file'][] = $lujin; } //如果是目錄 if(is_dir($lujin)){ $arr['dir'][] = $lujin; $fun = __FUNCTION__; $fun($lujin); } } } return $arr; } return "沒(méi)有存在該目錄"; }/** * 返回目錄大小 * @param $dirName 目標(biāo)目錄 * @return string 目錄大小|提示信息 */ function dirSize($dirName){ $num = 0; //由于下面使用了關(guān)鍵字。所以此處不會(huì)被賦值 在php中如果存在全局變量,那么此處賦值將不影響全局變量的值。也就是說(shuō)賦值無(wú)效 global $num; //使其成為全局變量,使用遞歸函數(shù)時(shí)。尤其重要 //判斷是否存在該目錄 if(is_dir($dirName)){ $data2 = opendir($dirName); //循環(huán)遍歷目錄 while($row = readdir($data2)){ if($row != '.' && $row != '..'){ //拼接路勁 $lujin = $dirName."/".$row; //是否為文件 if(is_file($lujin)){ $num+=filesize($lujin); } //是否為目錄 if(is_dir($lujin)){ $fun = __FUNCTION__; $fun($lujin); } } } return $num; } return "不是目錄"; }
批改老師:韋小寶批改時(shí)間:2019-02-25 17:21:58
老師總結(jié):寫(xiě)的很不錯(cuò) 掌握了PHP文件相關(guān)的函數(shù)以后小項(xiàng)目基本上都可以不使用到數(shù)據(jù)庫(kù)了