轉自:http://www.02405.com/program/php/1692.html
在php中使用mkdir()方法創建文件夾時報錯:No such file or directory,出錯代碼如下:
$uploads_dir = './Public/files/uploads/'.date('y-m-d',time()).'/'; if (!file_exists($uploads_dir)) { mkdir($uploads_dir); }
經過查詢手冊得知mkdir函數的具體信息如下:
定義和用法:
mkdir() 函數創建目錄。
若成功,則返回 true,否則返回 false。
語法:
mkdir(path,mode,recursive,context)
參數 描述
path 必需。規定要創建的目錄的名稱。
mode 必需。規定權限。默認是 0777。
recursive 必需。規定是否設置遞歸模式。
context 必需。規定文件句柄的環境。Context 是可修改流的行為的一套選項。
錯誤原因:如果通過mkdir方法創建的是多級目錄,應該設置第三個參數為true,也就是遞歸模式,否則就會報:No such file or directory錯誤,改為如下代碼,成功執行:
$uploads_dir = './Public/files/uploads/'.date('y-m-d',time()).'/'; if (!file_exists($uploads_dir)) { mkdir($uploads_dir,0777,true); }
如果還提示:
mkdir() permission denied,點擊查看
主要是要賦予你的web目錄777權限。