(PECL xattr >= 0.9.0)
xattr_get — 拡張属性を取得する
$filename
, string $name
, int $flags
= 0): stringこの関数は、ファイルの拡張属性の値を取得します。
拡張属性には二種類の異なる名前空間、つまり、ユーザーとルートがあります。
ユーザー名前空間は、すべてのユーザーで利用可能ですが、ルート名前空間は、ルート権限を有するユーザーのみ利用可能です。
xattr はデフォルトでユーザー名前空間で処理を行いますが、 flags
引数によりこれを変更することができます。
filename
属性を取得するファイル。
name
属性の名前。
flags
XATTR_DONTFOLLOW |
シンボリックリンクのリンク先をたどらず、リンクそのものを操作します。 |
XATTR_ROOT |
root (信頼された) 名前空間に属性を設定します。root 権限が必要です。 |
値を含む文字列、あるいは属性が存在しない場合には false
を返します。
例1 システム管理者がファイルに署名をしているかどうかを調べる
<?php
$file = '/usr/local/sbin/some_binary';
$signature = xattr_get($file, 'Root signature', XATTR_ROOT);
/* ... $signature が正しいものかどうかを調べます ... */
?>