(PECL ev >= 0.2.0)
EvStat::attr — 返回 Ev 最近偵測到的值
此函式沒有參數。
返回包含 Ev 最近偵測到的值的陣列(無實際執行 stat
)
鍵值 | 說明 |
---|---|
'dev'
|
包含檔案的裝置 ID |
'ino'
|
inode 編號 |
'mode'
|
保護 |
'nlink'
|
硬連結數量 |
'uid'
|
擁有者的使用者 ID |
'size'
|
總大小,以位元組為單位 |
「gid」
|
擁有者的群組 ID |
「rdev」
|
裝置 ID(如果是特殊檔案) |
「blksize」
|
檔案系統 I/O 的區塊大小 |
「blocks」
|
已配置的 512 位元組區塊數量 |
「atime」
|
上次存取時間 |
「ctime」
|
上次狀態變更時間 |
「mtime」
|
上次修改時間 |
詳情請參閱 stat(2)
線上手冊頁面。
範例 #1 監控 /var/log/messages 的變更
<?php
// 使用 10 秒更新間隔。
$w = new EvStat("/var/log/messages", 8, function ($w) {
echo "/var/log/messages 已變更\n";
$attr = $w->attr();
if ($attr['nlink']) {
printf("目前大小:%ld\n", $attr['size']);
printf("目前 atime:%ld\n", $attr['atime']);
printf("目前 mtime:%ld\n", $attr['mtime']);
} else {
fprintf(STDERR, "`messages` 檔案不存在!");
$w->stop();
}
});
Ev::run();
?>