Coroutine::fread

协程方式读取文件。

function Coroutine::fread(resource $handle, int $length = 0);

需要2.0.11或更高版本

参数

返回值

读取成功返回字符串内容,读取失败返回false

版本差异

4.0.4以下版本fread方法不支持非文件类型的stream,如STDINSocket,请勿使用fread操作此类资源。

4.0.4以上版本fread方法支持了非文件类型的stream资源,底层会自动根据stream类型选择使用AIO线程池或EventLoop实现。

示例

use Swoole\Coroutine as co;
$fp = fopen(__DIR__ . "/defer_client.php", "r");
co::create(function () use ($fp)
{
    fseek($fp, 256);
    $r =  co::fread($fp);
    var_dump($r);
});