程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 詳解PHP內置函數mkdir()

詳解PHP內置函數mkdir()

編輯:關於PHP編程

函數mkdir有兩個參數,目錄路徑和訪問權限
例mkdir(/tmp/test,0777)

然後要得到的權限碼,不一定是上邊設定的,當前系統的umask將會與設定的值‘與’,這樣子才是真正的權限碼,例如,如果umask為022,那碼上邊得到的權權限碼為0755,沒有寫的權限
所以如果我們想要真正的得到0777的權限,代碼
<?PHP
$oldumask=umask(0);
mkdir(test,0777);
umask($oldumask);
?>

umask()檢查並修改當前的umask碼,並返回當前的umask碼
umask 是什麼?
我們創建文件的默認權限是怎麼來的?如何改變這個默認權限呢?
當我們登錄系統之後創建一個文件總是有一個默認權限的,那麼這個權限是怎麼來的呢?這就是 umask 干的事情。umask 設置了用戶創建文件的默認權限,它與 chmod 的效果剛好相反,umask 設置的是權限“補碼”,而 chmod 設置的是文件權限碼。一般在 /etc/profile、$HOME/.bash_profile 或 $HOME/.profile 中設置 umask 值。

如何計算 umask 值?
umask 命令允許你設定文件創建時的缺省模式,對應每一類用戶(文件屬主、同組用戶、其他用戶)存在一個相應的 umask 值中的數字。對於文件來說,這一數字的最大值分別是 6。系統不允許你在創建一個文本文件時就賦予它執行權限,必須在創建後用 chmod 命令增加這一權限。目錄則允許設置執行權限,這樣針對目錄來說,umask 中各個數字最大可以到 7。

該命令的一般形式為:umask nnn,其中 nnn 可為 000 - 777。

我們只要記住 umask 是從權限中“拿走”相應的位即可。

如:umask 值為 022,則默認目錄權限為 755,默認文件權限為 644。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved