swoole_mysql怎么应用

2020-08-20 07:37:47

Swoole在1.8.6版本提供了全新的异步MySQL客户端,底层自行实现了MySQL的通信协议,无需依赖其他第三方库,如libmysqlclient、mysqlnd、mysqli等。 (推荐学习: swoole视频教程)

从1.8.6版本开始SwooleMySQL已内置到Swoole中,无需通过--enable-async-mysql编译参数开启。

swoole_mysql->__construct创建异步mysql客户端。

使用实例

$db = new swoole_mysql();$server = array(    'host' => '192.168.56.102',    'port' => 3306,    'user' => 'test',    'password' => 'test',    'database' => 'test',    'charset' => 'utf8', //指定字符集    'timeout' => 2,  // 可选:连接超时时间(非查询超时时间),默认为SW_MYSQL_CONNECT_TIMEOUT(1.0));$db->connect($server, 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, $db->errno);        }        elseif ($r === true )        {            var_dump($db->affected_rows, $db->insert_id);        }        var_dump($r);        $db->close();    });});