Maison >cadre php >Swoole >Comment utiliser Swoole et MySQL

Comment utiliser Swoole et MySQL

angryTom
angryTomoriginal
2020-03-14 10:28:062745parcourir

Comment utiliser Swoole et MySQL

Comment utiliser swoole et mysql

Swoole est meilleur pour le fonctionnement asynchrone de MySQL.

Avantages de l'utilisation de MySQL asynchrone :

Empêcher le blocage du code et améliorer l'efficacité du code

Occasions applicables :

1. Aucune ressource partagée n'est impliquée, ou les ressources partagées sont en lecture seule, c'est-à-dire des opérations non mutuellement exclusives

2 Il n'y a pas de relation stricte dans le timing

3. les opérations ne sont pas nécessaires ou peuvent être transmises. Autres moyens de contrôler l'atomicité

4 Souvent utilisé pour les opérations fastidieuses telles que les opérations d'E/S, car cela affecte l'expérience client et les performances

5. n'affecte pas la logique du thread principal

Étude recommandée : Tutoriel vidéo MySQL

Échantillon de code :

<?php
class mysql {
    private $param;
    public $db;
    public function __construct() {
        $this->db = new swoole_mysql;
        $this->param = array(
            &#39;host&#39; => &#39;127.0.0.1&#39;,
            &#39;user&#39; => &#39;root&#39;,
            &#39;password&#39; => &#39;123&#39;,
            &#39;database&#39; => &#39;test&#39;,
        );
    }

    public function exec($sql) {
        $this->db->connect($this->param, function ($db, $result) use ($sql) {
            if ($result === false) {
                echo "连接数据库失败 : 错误代码:" . $db->connect_errno . PHP_EOL . $db->connect_error;
                return false;
            }
            $db->query($sql, function ($db, $res) {
                if ($res === false) {
                    // error属性获得错误信息,errno属性获得错误码 
                    echo "sql语句执行错误 : " . $db->error;
                } else if ($res === true) {
                    // 非查询语句  affected_rows属性获得影响的行数,insert_id属性获得Insert操作的自增ID 
                    echo "sql语句执行成功,影响行数 : " . $db->affected_rows;
                    
                } else {
                    //查询语句  $result为结果数组 
                    var_dump($res);
                    
                }
                $db->close();
            });
        });
    }
}

$mysql = new mysql();

PHP Site Web chinois, un grand nombre de tutoriels de création de sites Web , bienvenue pour apprendre !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn