ファイルがアクセスできるかを調べる

# posix_eaccess

(PHP 8 >= 8.3.0)

posix_eaccess — ファイルがアクセスできるかを調べる

### 説明

function posix_eaccess(string `$filename`, int `$flags` = 0): bool

posix_eaccess() は、ファイルの実効ユーザーのパーミッションを調べます。

### パラメータ

`filename`

  調べるファイル名

`flags`

  `POSIX_F_OK`, `POSIX_R_OK`, `POSIX_W_OK`, `POSIX_X_OK` のうち、ひとつ以上のビットマスクの組み合わせです。

  `POSIX_R_OK`, `POSIX_W_OK`, `POSIX_X_OK` についてはそれぞれ、 ファイルが存在し読み取り可能、ファイルが存在し書き込み可能、 ファイルが存在し実行可能という意味になります。 `POSIX_F_OK` は、 ファイルが存在するかどうかだけを調べます。

### 戻り値

成功した場合に `true` を、失敗した場合に `false` を返します。

### 変更履歴

バージョン | 説明
--- | ---
8.3.0 | ファイルの実効ユーザー/グループを調べるようになりました。 実ユーザー/グループを調べる posix_access() とは異なります。

### 例

例1 posix_eaccess() の例

このサンプルは、$file が読み取り可能かつ書き込み可能かを調べます。 そうでない場合、エラーメッセージを出力します。

    <?php

    $file = 'some_file';

    if (posix_eaccess($file, POSIX_R_OK | POSIX_W_OK)) {
        echo 'The file is readable and writable!';

    } else {
        $error = posix_get_last_error();

        echo "Error $error: " . posix_strerror($error);
    }

    ?>

### 参考

- posix_get_last_error() - 直近で失敗した posix 関数が設定したエラー番号を取得する
- posix_strerror() - 指定したエラー番号に対応するシステムのエラーメッセージを取得する
- posix_access() - ファイルのアクセス権限を判断する

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open