• 异步MySQL客户端
    • 使用实例

    异步MySQL客户端

    Swoole1.8.6版本提供了全新的异步MySQL客户端,底层自行实现了MySQL的通信协议,无需依赖其他第三方库,如libmysqlclientmysqlndmysqli等。

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

    使用实例

    1. $db = new swoole_mysql();
    2. $server = array(
    3. 'host' => '192.168.56.102',
    4. 'port' => 3306,
    5. 'user' => 'test',
    6. 'password' => 'test',
    7. 'database' => 'test',
    8. 'charset' => 'utf8', //指定字符集
    9. 'timeout' => 2, // 可选:连接超时时间(非查询超时时间),默认为SW_MYSQL_CONNECT_TIMEOUT(1.0)
    10. );
    11. $db->connect($server, function ($db, $r) {
    12. if ($r === false) {
    13. var_dump($db->connect_errno, $db->connect_error);
    14. die;
    15. }
    16. $sql = 'show tables';
    17. $db->query($sql, function(swoole_mysql $db, $r) {
    18. if ($r === false)
    19. {
    20. var_dump($db->error, $db->errno);
    21. }
    22. elseif ($r === true )
    23. {
    24. var_dump($db->affected_rows, $db->insert_id);
    25. }
    26. var_dump($r);
    27. $db->close();
    28. });
    29. });