PHP Conference Japan 2024

posix_access

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

posix_access 判斷檔案的可存取性

說明

posix_access(字串 $filename, 整數 $flags = 0): 布林值

posix_access() 檢查使用者對檔案的權限。

參數

filename

要測試的檔案名稱。

flags

POSIX_F_OKPOSIX_R_OKPOSIX_W_OKPOSIX_X_OK 中的一個或多個組成的遮罩。

POSIX_R_OKPOSIX_W_OKPOSIX_X_OK 分別請求檢查檔案是否存在以及是否具有讀取、寫入和執行權限。POSIX_F_OK 僅請求檢查檔案是否存在。

返回值

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

範例

範例 #1 posix_access() 範例

此範例將檢查 $file 是否可讀寫,否則將印出錯誤訊息。

<?php

$file
= 'some_file';

if (
posix_access($file, POSIX_R_OK | POSIX_W_OK)) {
echo
'檔案可讀寫!';

} else {
$error = posix_get_last_error();

echo
"錯誤 $error: " . posix_strerror($error);
}

?>

參見

新增註解

使用者提供的註解 1 則註解

unixguy at earth dot com
10 年前
需要注意的是,此函式根據執行 PHP 的程序的真實 UID 和真實 GID 執行權限檢查。這些不一定與有效 UID 和 GID 相同。

換句話說,access() 很有可能針對特定權限返回「true」,但需要相同權限的 fopen() 操作會失敗,反之亦然。

如果您使用 access() 進行此類檢查,請記住這一點。
To Top