php mkdir 創建多級目錄以及修改權限


mkdir() 用法:mkdir($path,0777,true);

第一個參數:必須,代表要創建的多級目錄的路徑;
第二個參數:設定目錄的權限,默認是 0777,意味着最大可能的訪問權;注意:mode 在windows下被忽略
第三個參數:true表示允許創建多級目錄。

返回值:成功時返回true,失敗時返回false

其他相關函數:is_dir 判斷給定文件名是否是一個目錄,rmdir() 刪除目錄

舉例:

<?php
    //要創建的多級目錄
    $path="php/php1/php2";
    //判斷目錄存在否,存在給出提示,不存在則創建目錄
    if (!is_dir($path)){
        //第三個參數是“true”表示能創建多級目錄
        $res=mkdir($path,0777,true);
        if ($res){
            echo "success";
        }else{
            echo "fail";
        }
    }
?>   

在linux(ubuntu)系統中執行上述代碼后,實際創建的文件權限為755,原因是在 linux 系統中在創建 文件/文件夾 時有一個默認權限,此權限受 umask 設置影響,linux 系統中默認的 umask 為 022,與 777 & 運算之后,就變成了 755。

解決方案:

先創建目錄,再使用chmod將權限修改為 777:

<?php
    $path = 'php/php1/php2';
    if(!is_dir($path)){
       mkdir($path, 0777, true);
       chmod($path, 0777);
    }  
?>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM