当前位置: 365bet亚洲官方投注 > 编程知识 > 正文

swoole初探笔记3异步管理,写入文件操作示例_ph

时间:2019-12-22 11:11来源:编程知识
本文实例陈述了PHPSwoole异步读取、写入文件操作。分享给大家供我们仿效,具体如下: 1、异步读取文件 //面向对象格局 swoole_async_readfile(string $filename,$callback); //纯函数swoole异步读取文

本文实例陈述了PHP Swoole异步读取、写入文件操作。分享给大家供我们仿效,具体如下:

1、异步读取文件

//面向对象格局
swoole_async_readfile(string $filename,$callback);
//纯函数swoole异步读取文件
SwooleAsync::readFile(string $filename,$callback);

//异步读取
swoole_async_readfile(__DIR__."/1.txt",function($filename,$content){
    echo "$filename $content";
});

在起头的 fopen 打开文件后用 fwrite 写入内容, 再用 filesize 查看文件长度,是不改变的

异步读取文件:swoole_async_readfile

2、异步文件写入

swoole_async_writefile($filename,$fileContent,$callback,$flags=0)
$fileContent 写入的内容 最大写入4M
$flags 写入的选项 FILE_APPEND表示追加到文件末尾

$content = 'hello world';
swoole_async_writefile("2.txt",$content,function ($filename){
    echo $filename;
},0);

所以在 fopen 展开文件后 fread 读取文件内容, 再用 fwrite 写入文件

异步写入文件:swoole_async_writefile

3、异步事件

swoole_event_add($sock,$read_callback,$write_callback=null,$flags=null);

fread 读取文件. 读取到的内容和率先个读取到的如出风华正茂辙, 而不会读取到 fwrite 写入的

读取文件 readfile.php:

4、异步mysql

swoole_mysql
connect on escape query

//实例化资源
$db = new swoole_mysql();

$config = [
    'host' => '127.0.0.1',
    'user' => 'root',
    'password' => '!@#yhj123',
    'database' => 'hong',
    'charset'  => 'utf8',
];
//连接数据库
$db->connect($config,function ($db,$r){
    if($r === false){
        var_dump($db->connect_errno,$db->connect_error);
        die("连接失败");
    }
    //成功
    $sql = 'show tables';
    $db->query($sql,function (swoole_mysql $db,$r){
        if($r === false){
            var_dump($db->error);
            die("操作失败");
        }elseif($r === true){
            var_dump($db->affected_rows,$db->insert_id);
        }
        var_dump($r);
        $db->close();
    });
});

而是能够用 readfile 读取到 fwrite 写入的内容

写入文件 writefile.php:(说明:以上两个函数可读取最大文件为4M,读取大文件使用 swoole_async_read、swoole_async_write)更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP扩展开发教程》、《PHP网络编程技巧总结》、《php curl用法总结》、《PHP数组操作技巧大全》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《php字符串用法总结》希望本文所述对大家PHP程序设计有所帮助。

刚 fopen 文件时文件的 filesize 

图片 1

图片 2

fwrite 后再来读取一回 filesize, 

图片 3

察觉文件长度没变, 然而 readfile 能够把写入的内容读出来, 而 fread 必得扩充写入文件长度 + 1

图片 4

编辑:编程知识 本文来源:swoole初探笔记3异步管理,写入文件操作示例_ph

关键词: