PHP 檔案系統 is_writable() 函式



PHP 檔案系統 is_writable() 函式用於檢查指定的檔案是否可寫。如果檔名存在且可寫,則此函式可以返回 true。檔名引數可以是目錄名,允許我們檢查目錄是否可寫。

  • 如果失敗,則返回 E_WARNING。
  • clearstatcache() 函式用於清除快取,因為此函式使用快取記憶體。
  • 對於不存在的檔案,它返回 false。

語法

以下是 PHP 檔案系統 is_writable() 函式的語法 -

bool is_writable ($filename)

引數

以下是 is_writable() 函式唯一必需的引數 -

序號 引數和描述
1

$filename(必填)

這是要檢查的檔案的路徑。

返回值

如果檔案可寫,則函式返回 TRUE,否則返回 E_Warning。

PHP 版本

is_writable() 函式最初作為核心 PHP 4 的一部分引入,並且與 PHP 5、PHP 7 和 PHP 8 相容良好。

示例

假設我們在當前工作目錄或資料夾中有一個名為 phptest.txt 的檔案。因此,我們將瞭解如何使用 PHP 檔案系統 is_writable() 函式來檢查我們的檔案是否可寫。

<?php
    $file = "/PhpProject/php/phptest.txt";
    if(is_writable($file)) {
        echo ("$file is writable");
    } else {
        echo ("$file is not writable");
    }
?> 

輸出

這將產生以下結果 -

/PhpProject/php/phptest.txt is writable

示例

這是另一個簡單的演示,用於瞭解 is_writable() 函式如何工作以檢查多個檔案是否可寫。

<?php
    $filename1 = 'myfile.txt';
    $filename2 = 'index.php';

    //Check that the first file is writable
    if(is_writable($filename1)) {
    echo "The first file $filename1 is writable.\n";
    } else {
    echo "The first file $filename1 is not writable.\n";
    }

    //Check that the second file is writable
    if(is_writable($filename2)) {
    echo "The second file $filename2 is writable.\n";
    } else {
    echo "The second file $filename2 is not writable.\n";
    }
?>

輸出

以下是以下程式碼的結果 -

The first file myfile.txt is writable.
The second file index.php is not writable.

示例

在此 PHP 程式碼中,我們將使用 is_writable() 函式並檢查檔案是否可寫,我們還將顯示其許可權。

<?php
    // Check perm of the given file 
    $perm = fileperms("/PhpProjects/myfile.txt"); 
    $permValue = sprintf("%o", $perm); 
    
    // Clearing the File Status Cache  
    clearstatcache(); 
    
    $filename = "/PhpProjects/myfile.txt"; 
    
    // Check that the file is writable or not 
    if(is_writable($myfile))  
    { 
    echo ("The $filename is writable and it has the following file permissions : $permValue"); 
    }  
    else 
    { 
    echo ("The $filename is not writable and it has the following file permissions : $permValue"); 
    } 
    
    // Clear the File Status Cache  
    clearstatcache();
?> 

輸出

這將生成以下結果 -

The PhpProjects/myfile.txt is writable and it has the following file permissions : 100644 

注意

使用此函式,目錄的名稱也可以用作引數,這允許我們檢查目錄是否可寫或您是否沒有訪問許可權。

總結

is_writable() 方法是一個內建函式,用於檢查給定檔案是否可寫。因此,在 is_writable() 函式內部,我們可以將檔名作為引數傳遞。如果檔案具有寫許可權,則返回 True。

php_function_reference.htm
廣告