(PECL eio >= 0.0.1dev)
Create a hardlink for file
resource eio_link ( string $path, string $new_path [, int $pri = EIO_PRI_DEFAULT [, callable $callback = NULL [, mixed $data = NULL ]]] )
eio_link() creates a hardlink new_path
for a file specified by path
.
Parameters:
path
Source file path.
new_path
Target file path.
pri
The request priority: EIO_PRI_DEFAULT
, EIO_PRI_MIN
, EIO_PRI_MAX
, or NULL
. If NULL
passed, pri
internally is set to EIO_PRI_DEFAULT
.
callback
callback
function is called when the request is done. It should match the following prototype:
1 | void callback(mixed $data , int $result [, resource $req ]); |
data
Arbitrary variable passed to callback
.
Returns:
Examples:
eio_link() example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | <?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(); ?> |
The above example will output something similar to:
bool(true) bool(true) string(%d) "%ssymlink.dat"
Please login to continue.