(PECL eio >= 0.0.1dev)
eio_stat — Obtener el estado de un fichero
eio_stat() devuelve la información del estado de un fichero en
el argumento result
de callback
path
La ruta de archivo
pri
La prioridad de petición: EIO_PRI_DEFAULT
, EIO_PRI_MIN
, EIO_PRI_MAX
, o NULL
.
Si se pasa NULL
, pri
es establecido internamente a
EIO_PRI_DEFAULT
.
callback
La función callback
es llamada cuando la petición está hecha.
Debería seguir el siguiente prototipo:
void callback(mixed $data, int $result[, resource $req]);
data
son datos personalizados pasados a la petición.
result
es el valor del resultado específico de la petición; básicamente, el valor devuelto por la correspondiente llamada al sistema.
req
es el recurso de petición opcional que puede usarse con funciones como eio_get_last_error()
data
Variable arbitraria pasada a callback
.
eio_stat()devuelve un recurso de petición en caso de éxito o
FALSE
en caso de error. En caso de éxito asigna el argumento result
de
callback
a un array.
Ejemplo #1 Ejemplo de eio_stat()
<?php
$nombre_fichero_temp = "fichero-eio.tmp";
touch($nombre_fichero_temp);
function my_res_cb($datos, $resultado) {
var_dump($datos);
var_dump($resultado);
}
function my_open_cb($datos, $resultado) {
eio_close($resultado);
eio_event_loop();
@unlink($datos);
}
eio_stat($nombre_fichero_temp, EIO_PRI_DEFAULT, "my_res_cb", "eio_stat");
eio_open($nombre_fichero_temp, EIO_O_RDONLY, NULL,
EIO_PRI_DEFAULT, "my_open_cb", $nombre_fichero_temp);
eio_event_loop();
?>
El resultado del ejemplo sería algo similar a:
string(8) "eio_stat" array(12) { ["st_dev"]=> int(2050) ["st_ino"]=> int(2489173) ["st_mode"]=> int(33188) ["st_nlink"]=> int(1) ["st_uid"]=> int(1000) ["st_gid"]=> int(100) ["st_rdev"]=> int(0) ["st_blksize"]=> int(4096) ["st_blocks"]=> int(0) ["st_atime"]=> int(1318250380) ["st_mtime"]=> int(1318250380) ["st_ctime"]=> int(1318250380) }