4.2版本的swoole_mysql调用抛出警告了,是不是swoole文档没有更新呢

来源:5-5 异步Mysql详解(上)

芭菲雨

2019-01-24

警告内容说是4.3.0以后这个api将会被取代建议我用coroutine APIS 替代

代码如下:

<?php
/**
 * 异步mysql
 * PHP version 7.2
 * @author v_lihuan1  * @date 2019/1/24 9:07
 */
class AsyMysql{
    public $dbSource = null;
    public $dbConfig = array();
    public function __construct()
    {
        $this->dbSource = new swoole_mysql();
        $this->dbConfig = array(
            "host" => "*.*.*.*",
            "port" => 3306,
            "user" => "***",
            "password" => "****",
            "database" => "test",
            "charset" => "utf8",
            "timeout" => 2,
        );
    }

    /**
     * 测试mysql异步执行
     * @param $id
     * @param $name
     */
    public function execute($id, $name)
    {
        $this->dbSource->connect($this->dbConfig, function ($db, $result) use ($id, $name) {
            if ($result == true) {
                $sql = "update user set name='{$name}' where id={$id}";
                $db->query($sql, function ($db, $result) {
                    if ($result == true) {
                        echo "execute success" . PHP_EOL;
                    } else {
                        echo "execute error" . PHP_EOL;
                    }
                    $db->close();
                });
            } else {
                echo "connect error" . PHP_EOL;
            }
        });
        return true;
    }
}

$asmysql = new AsyMysql();

$result = $asmysql->execute('1','test1');
var_dump($result);



警告截图:

http://img.mukewang.com/szimg/5c491f080001431c12200124.jpg


替代的是怎么个写法呢

写回答

1回答

singwa

2019-01-25

同学您好。  异步Mysql 即将被移出,建议使用协程Mysql   官网里面有协程mysql的使用,您看看 如果有问题欢迎随时找我沟通。祝您学习愉快。

https://wiki.swoole.com/wiki/page/p-coroutine_mysql.html

0
2
singwa
回复
芭菲雨
客气了祝您学习愉快。。。
2019-01-25
共2条回复

Swoole入门到实战打造高性能赛事直播平台

swoole创始人推荐,借助Swoole打造高性能直播平台

2228 学习 · 1062 问题

查看课程