Maison > Article > développement back-end > Meilleures pratiques pour les connexions aux bases de données PHP : optimisation des performances et améliorations de la sécurité
Afin d'améliorer les performances et la sécurité des connexions aux bases de données PHP, les meilleures pratiques incluent : l'utilisation de pools de connexions pour éviter d'établir des connexions à plusieurs reprises ; l'utilisation d'instructions préparées pour empêcher l'injection SQL et améliorer l'efficacité des requêtes, telles que des mots de passe forts et le cryptage ; Restrictions de connexion et d’accès.
Avant d'établir une connexion à la base de données, vous devez suivre les étapes suivantes :
mysqli
或PDO
. L'utilisation du pooling de connexions peut améliorer considérablement les performances. Cela évite d'avoir à rétablir la connexion pour chaque requête en enregistrant la connexion à la base de données dans le pool.
Utilisez le pool de connexions PDO :
$dsn = 'mysql:host=localhost;dbname=mydb;charset=utf8'; $user = 'root'; $password = 'mypassword'; try { $dbh = new PDO($dsn, $user, $password); $dbh->setAttribute(PDO::ATTR_PERSISTENT, true); //开启持久化连接 } catch (PDOException $e) { //错误处理 }
Utilisez le pool de connexions mysqli :
$hostname = 'localhost'; $username = 'root'; $password = 'mypassword'; $database = 'mydb'; $mysqli = new mysqli($hostname, $username, $password, $database); $mysqli->set_charset("utf8"); $mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT, 10); //设置连接超时时间为10秒 $mysqli->options(MYSQLI_OPT_READ_TIMEOUT, 30); //设置读取超时时间为30秒
L'utilisation d'instructions préparées peut empêcher l'injection SQL et améliorer les performances des requêtes.
Déclarations préparées à l'aide de PDO :
$stmt = $dbh->prepare('SELECT * FROM users WHERE username = ?'); //?是占位符 $stmt->execute([$username]); $result = $stmt->fetchAll(PDO::FETCH_ASSOC);
Déclarations préparées à l'aide de mysqli :
$stmt = $mysqli->prepare('SELECT * FROM users WHERE username = ?'); $stmt->bind_param('s', $username); //'s'表示占位符类型为字符串 $stmt->execute(); $result = $stmt->get_result()->fetch_all(MYSQLI_ASSOC);
Il est important de prendre des mesures de sécurité appropriées pour empêcher les fuites de données et les accès non autorisés.
Envisagez d'utiliser les bonnes pratiques suivantes pour améliorer la connexion à la base de données de votre site Web :
En mettant en œuvre ces bonnes pratiques, vous pouvez améliorer considérablement les performances et la sécurité de vos connexions à la base de données PHP, offrant ainsi une expérience plus fluide et plus sécurisée à vos utilisateurs.
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!