简体中文
查询

eio_fchmod()函数—用法及示例

「 通过文件描述符异步更改文件的权限 」


函数名称:eio_fchmod()

函数描述:通过文件描述符异步更改文件的权限

适用版本: PHP 5 >= 5.4.0, PHP 7

语法:eio_fchmod(resource $fd, int $mode [, int $pri = EIO_PRI_DEFAULT [, callable $callback = NULL [, mixed $data = NULL ]]]) : resource

参数:

  • $fd:文件描述符,通过eio_open()或eio_open()返回的资源类型打开的文件
  • $mode:要设置的权限模式(八进制表示的数值),例如:0644
  • $pri:优先级,可选参数,默认为EIO_PRI_DEFAULT
  • $callback:请求完成时的回调函数,可选参数
  • $data:回调函数中的用户自定义数据,可选参数

返回值:

  • 如果请求成功,返回请求资源,可以在将来使用该资源来取消请求(使用eio_cancel())
  • 如果请求失败,返回-1

用法示例:

<?php
$fd = eio_open('test.txt', EIO_O_WRONLY, null, null, null);

eio_fchmod($fd, 0644, EIO_PRI_DEFAULT, function($data, $result) use ($fd) {
   if ($result == 0) {
      echo "文件权限更改成功";
   } else {
      echo "文件权限更改失败";
   }
   eio_close($fd);
});

eio_event_loop();
?>

以上示例中,我们打开了一个名为test.txt的文件,并以写入模式打开。然后,我们使用eio_fchmod()函数将文件权限更改为0644(相当于-rw-r--r--)。在回调函数中,我们检查了请求的结果,如果结果为0,则表示权限更改成功,否则表示失败。最后,我们使用eio_close()关闭文件描述符。最后,在事件循环中调用eio_event_loop()以触发异步请求的执行。

请注意,为了使eio_fchmod()函数正常工作,您还需要确保已启用eio扩展。

补充纠错
上一个函数: eio_dup2()函数
下一个函数: eio_fallocate()函数
热门PHP函数
分享链接