(PECL ev >= 0.2.0)
EvStat::attr — 返回 Ev 最近检测到的值
此函数没有参数。
返回一个数组,其中包含 Ev 最近检测到的值(不进行实际的 stat
操作)
键 | 描述 |
---|---|
'dev'
|
包含文件的设备的 ID |
'ino'
|
索引节点号 |
'mode'
|
保护 |
'nlink'
|
硬链接数 |
'uid'
|
所有者的用户 ID |
'size'
|
总大小(字节) |
'gid'
|
所有者的组 ID |
'rdev'
|
设备 ID(如果为特殊文件) |
'blksize'
|
文件系统 I/O 的块大小 |
'blocks'
|
分配的 512B 块数 |
'atime'
|
最后访问时间 |
'ctime'
|
最后状态变更时间 |
'mtime'
|
最后修改时间 |
有关详细信息,请参阅 stat(2)
手册页。
示例 #1 监视 /var/log/messages 的更改
<?php
// 使用 10 秒更新间隔。
$w = new EvStat("/var/log/messages", 8, function ($w) {
echo "/var/log/messages changed\n";
$attr = $w->attr();
if ($attr['nlink']) {
printf("Current size: %ld\n", $attr['size']);
printf("Current atime: %ld\n", $attr['atime']);
printf("Current mtime: %ld\n", $attr['mtime']);
} else {
fprintf(STDERR, "`messages` file is not there!");
$w->stop();
}
});
Ev::run();
?>