swoole的异步mysql操作 swoole

xiaoxiao2025-05-13  17

异步mysql:swoole_mysql

class AsyncMysql{ public $dbSource = ''; public $dbConfig = ''; public function __construct(){ $this->dbSource = new Swoole\Mysql; $this->dbConfig= [ 'host'=>'127.0.0.1', "port"=>3306, "user"=>"root", "password"=>"root", "database"=>"test", "charset"=>'utf8', ]; } public function update(){ } public function add(){ } public function execute($id,$mark){ $this->dbSource->connect($this->dbConfig,function($db,$result){ echo 'mysql Connect'.PHP_EOL; if($result === false){ var_dump($db->connect_error); exit; } $sql = 'select * from test'; $db->query($sql,function($db,$result){ if($result ===false){ echo 'query false'; }elseif($result ===true){ echo 'query ok'; }else{ print_r($result); } $db->close(); }); }); return true; } } $my = new AsyncMysql(); $res = $my->execute(1,1); var_dump($res); echo 'this is ok?';

运行结果:

这bool(true) this is ok?mysql Connect Array ( [0] => Array ( [mark] => 520 [victory] => a ) [1] => Array ( [mark] => 519 [victory] => a ) )

小总结:异步操作数据库内容会在最后被执行,可以运用到页面记录、用户登录更新等操作。 异步执行操作数据记录,既不影响用户的访问速度,又把统计给做了,岂不是美滋滋!

转载请注明原文地址: https://www.6miu.com/read-5030038.html

最新回复(0)