PHP Swoole异步MySQL客户端实现方法示例

yipeiwu_com6年前Mysql基础

本文实例讲述了PHP Swoole异步MySQL客户端实现方法。分享给大家供大家参考,具体如下:

使用函数:swoole_mysql

使用版本:1.8.6及以上

把官方文档的例子改写成了面向对象的形式,示例如下:

SwooleMysql.php:

<?php
class SwooleMysql {
  public $db = "";
  public $server = [];
  public function __construct() {
    //实例化
    $this->db = new swoole_mysql();
    //配置参数
    $this->server = [
      'host' => '127.0.0.1',
      'port' => 3306,
      'user' => 'root',
      'password' => 'xxooni',
      'database' => 'lws',
      'charset' => 'utf8',
      'timeout' => 2, // 可选:连接超时时间(非查询超时时间),默认为SW_MYSQL_CONNECT_TIMEOUT(1.0)
    ];
  }
  //执行SQL语句操作
  public function execute($sql) {
    $this->db->connect($this->server, function($db, $res) use($sql) {
      echo "连接MySQL...\n";
      if($res === false) {
        var_dump($db->connect_errno, $db->connect_error);
        die;
      }
      $db->query($sql, function($db, $res){
        if($res === false) {
          var_dump($db->error, $db->errno);
        }elseif($result === true) {
          var_dump($db->affected_rows, $db->insert_id);
        }
        var_dump($res);
        $db->close();
      });
    });
    return true;
  }
}
$obj = new SwooleMysql();
$sql = 'select `article_title` from `lws_article` where `article_id`=66';
$res = $obj->execute($sql);
var_dump($res);
echo "lws\n";

运行结果:

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP扩展开发教程》、《PHP网络编程技巧总结》、《php curl用法总结》、《PHP数组(Array)操作技巧大全》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《php字符串(string)用法总结

希望本文所述对大家PHP程序设计有所帮助。

相关文章

php 获取mysql数据库信息代码

复制代码 代码如下:<?php @mysql_connect("localhost", "root","1981427") //选择数据库之前需要先连接数据库服务器 or die(...

linux php mysql数据库备份实现代码

但是出现了问题: 第一、运行php的是apche的用户,比如是nobody,那么它一般是没有权限访问/usr/local/mysql/data目录的 第二、就算能够访问,那么你如何能够把...

优化使用mysql存储session的php代码

之前写过两篇文章《自定义SESSION(二)——数据库保存》和《我为什么不使用session》   但后来发现都有问题。前者处理在实际中几乎没什么用处,而且sessi...

解决了Ajax、MySQL 和 Zend Framework 的乱码问题

问题: 在 Google Map 上用 Ajax 以 get 方式向服务器传递数据时,服务器端显示为 url 乱码, Zend Framework 向 MySQL 存储数据为乱码,但是提...

mysql_fetch_assoc和mysql_fetch_row的功能加起来就是mysql_fetch_array

mysql_fetch_assoc只能用字段,就像mysql_fetch_array($result, MYSQL_ASSOC)结果一样。 mysql_fetch_row&nb...