【PHP8.x】getPermsメソッドの使い方

getPermsメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

getPermsメソッドは、FilesystemIteratorクラスに属し、現在のイテレータが指し示すファイルまたはディレクトリのパーミッション(アクセス権)を取得するメソッドです。パーミッションとは、ファイルやディレクトリに対して、誰がどのような操作(読み込み、書き込み、実行など)を行えるかを定義する情報のことです。

このメソッドは、UNIX系システムで一般的に用いられるパーミッション情報を、整数値として返します。返される整数値は、ビットマスクとしてエンコードされており、ファイルの所有者、所属グループ、およびその他のユーザーに対する読み込み、書き込み、実行の権限を示します。例えば、所有者にすべての権限があり、グループとその他に読み込みと実行権限がある場合、このメソッドは特定の整数値を返します。この整数値は、通常、八進数(例: 0755)として解釈されることで、具体的な権限の内容を把握できます。

getPermsメソッドの戻り値は、PHPの標準的なstat()関数やfileperms()関数が返すパーミッション情報と同じ形式であるため、これらの関数と組み合わせて扱うことも可能です。システムエンジニアにとって、ファイルやディレクトリへのアクセス制御は非常に重要であり、このメソッドはプログラムでファイルシステム上の要素のアクセス権限を確認し、それに応じた適切な処理を実行するために役立ちます。

構文(syntax)

1<?php
2
3$iterator = new FilesystemIterator(__DIR__);
4
5foreach ($iterator as $fileInfo) {
6    $permissions = $fileInfo->getPerms();
7    printf("ファイル名: %s, パーミッション: %o\n", $fileInfo->getFilename(), $permissions);
8    break;
9}

引数(parameters)

引数なし

引数はありません

戻り値(return)

int

FilesystemIterator::getPermsは、現在のディレクトリまたはファイルのパーミッション(アクセス権)を整数値で返します。