Returns the values most recently detected by Ev

- « EvStat

- EvStat::__construct »

- PHP Manual
- EvStat
- Returns the values most recently detected by Ev

# EvStat::attr

(PECL ev >= 0.2.0)

EvStat::attr — Returns the values most recently detected by Ev

### Description

public EvStat::attr(): array

Returns array of the values most recently detected by Ev

### Parameters

This function has no parameters.

### Return Values

Returns array with the values most recently detect by Ev(without actual `stat` 'ing):

List for item keys of the array returned by EvStat::attr()
Key | Description
--- | ---
`'dev'` | ID of device containing file
`'ino'` | inode number
`'mode'` | protection
`'nlink'` | number of hard links
`'uid'` | user ID of owner
`'size'` | total size, in bytes
`'gid'` | group ID of owner
`'rdev'` | device ID (if special file)
`'blksize'` | blocksize for file system I/O
`'blocks'` | number of 512B blocks allocated
`'atime'` | time of last access
`'ctime'` | time of last status change
`'mtime'` | time of last modification

See `stat(2)` man page for details.

### Examples

Example #1 Monitor changes of /var/log/messages

    <?php
    // Use 10 second update interval.
    $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();
    ?>

### See Also

- EvStat::prev() - Returns the previous set of values returned by EvStat::attr
- EvStat::stat() - Initiates the stat call