©
This document uses PHP Chinese website manual Release
(PECL eio >= 0.0.1dev)
eio_readlink — Read value of a symbolic link.
$path
, int $pri
, callable $callback
[, string $data
= NULL
] )
path
Source symbolic link path
pri
请求的优先级: EIO_PRI_DEFAULT
, EIO_PRI_MIN
, EIO_PRI_MAX
或 NULL
。如果是
NULL
,pri
将设为
EIO_PRI_DEFAULT
。
callback
callback
函数在请求完成时被调用。其应匹配一下原型:
void callback(mixed $data, int $result[, resource $req]);
data
传递给请求的用户数据。
result
针对请求的结果的值。通常是相应的系统调用返回的值。
req
可选的请求资源,可被 eio_get_last_error() 之类的函数使用。
data
Arbitrary variable passed to callback
.
eio_readlink() returns request resource on success or FALSE
on error.
Example #1 eio_readlink() example
<?php
$filename = dirname ( __FILE__ ). "/symlink.dat" ;
touch ( $filename );
$link = dirname ( __FILE__ ). "/symlink.link" ;
$hardlink = dirname ( __FILE__ ). "/hardlink.link" ;
function my_hardlink_cb ( $data , $result ) {
global $link , $filename ;
var_dump ( file_exists ( $data ) && ! is_link ( $data ));
@ unlink ( $data );
eio_symlink ( $filename , $link , EIO_PRI_DEFAULT , "my_symlink_cb" , $link );
}
function my_symlink_cb ( $data , $result ) {
global $link , $filename ;
var_dump ( file_exists ( $data ) && is_link ( $data ));
if (! eio_readlink ( $data , EIO_PRI_DEFAULT , "my_readlink_cb" , NULL )) {
@ unlink ( $link );
@ unlink ( $filename );
}
}
function my_readlink_cb ( $data , $result ) {
global $filename , $link ;
var_dump ( $result );
@ unlink ( $link );
@ unlink ( $filename );
}
eio_link ( $filename , $hardlink , EIO_PRI_DEFAULT , "my_hardlink_cb" , $hardlink );
eio_event_loop ();
?>
以上例程的输出类似于:
bool(true) bool(true) string(16) "/tmp/symlink.dat"