PHP 中如何新建一個資料夾假如它不存在的話

Ralfh Bryan Perez 2023年1月30日
  1. PHP 中 file_exists() 檢查是否存在檔案或目錄
  2. PHP 中 is_dir() 檢查檔案或目錄是否存在
  3. PHP 中的 file_exists()is_dir()
  4. PHP 中的 mkdir()
PHP 中如何新建一個資料夾假如它不存在的話

可以使用 PHP 建立資料夾並設定適當的許可權,特別是使用 mkdir() 函式的時候。

預設許可權模式為 0777(可能的最大訪問許可權)。建立目錄之前,首先要檢查目錄或檔案是否存在。在 PHP 中,可以使用 file_existsis_dir

PHP 中 file_exists() 檢查是否存在檔案或目錄

file_exists 函式是一個內建函式,用於檢查目錄或檔案是否存在。它接受路徑的引數,如果已經存在則返回 true,否則返回 false

使用 file_exists() 的程式示例:

$path = "sample/path/newfolder";
if (!file_exists($path)) {
    mkdir($path, 0777, true);
}

在上面的示例中,它使用 file_exists() 函式檢查目錄的存在,然後如果不存在的話,則遞迴地建立 newfolder 目錄,目錄的許可權是 0777

PHP 中 is_dir() 檢查檔案或目錄是否存在

這個函式也和 file_exists 類似,唯一的區別是,如果傳遞的字串是目錄,它只會返回 true;如果是檔案,它將返回 false

使用 is_dir 的示例:

$path = "sample/path/newfolder";
if (!is_dir($path)) {
    mkdir($path, 0777, true);
}

在上面的示例中,is_dir 在使用 mkdir 建立新資料夾之前首先檢查該資料夾是否已經存在。

PHP 中的 file_exists()is_dir()

這兩個函式都檢查目錄是否存在,唯一的區別是 file_exists() 如果傳遞的引數是一個檔案,也返回 true。另一方面,is_dirfile_exists 要快一點。

PHP 中的 mkdir()

此函式建立一個由路徑名指定的目錄,該目錄作為引數傳遞。預期的返回值為 truefalse

示例實現:

mkdir($path, $mode, $recursive, $context);

引數值

引數
path(必需) 目錄或建立路徑
mode(可選) 目錄或檔案許可權。預設情況下,mode0777(可能的最大訪問許可權)。
mode 由四個數字組成:
1st - 始終設定為 0
**2nd ** - 指定目錄或檔案的所有者的許可權
3rd - 指定所有者的使用者組的許可權。
4th - 指定其他所有者的許可權。
recursive(可選) truefalse
要遞迴地建立目錄,則 recursive 引數必須設定為 true
context(可選) 一組用於增強或修改流行為的引數

**注意:**當啟用安全模式時,PHP 將檢查目錄中的操作指令碼是否在目錄中具有相同的 UID(所有者)。

相關文章 - PHP Directory