Maison >développement back-end >tutoriel php >Explication détaillée de PDO::quote en PHP (avec exemples de code)

Explication détaillée de PDO::quote en PHP (avec exemples de code)

autoload
autoloadoriginal
2021-04-25 13:10:132355parcourir

Explication détaillée de PDO::quote en PHP (avec exemples de code)

Lorsque PHP se connecte à la base de données, il peut être nécessaire d'ajouter des guillemets à la chaîne dans l'instruction SQL Afin de résoudre ce problème, nous pouvons utiliser le build- de PHP. en fonction quote() fonction. Cet article vous amènera à y jeter un oeil.

Tout d'abord, regardons la syntaxe de la fonction quote() :

public PDO::quote    ( string $string   , int $parameter_type = PDO::PARAM_STR   ) : string
  • $string : la chaîne à laquelle les guillemets doivent être ajoutés.

  • $parameter_type : demande le type de données du pilote afin que vous puissiez choisir le style de guillemets.

  • Valeur de retour : renvoie une chaîne entre guillemets, dont l'utilisation est théoriquement sûre dans les instructions SQL . Si le pilote ne prend pas en charge cette méthode, false sera renvoyé.

Exemple de code :

1. Chaîne ordinaire avec guillemets

<?php
$servername = "localhost";
$username = "root";
$password = "root123456";
$dbname   = "my_database";
 
try {
    $pdo = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    echo "连接成功"."<br>"; 
    // $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $pdo->setAttribute(PDO::ATTR_CASE, PDO::CASE_UPPER);

    $string = &#39;Nice&#39;;
    print "Unquoted string: $string";
    echo "<br>";
    print "Quoted string: " . $pdo->quote($string) . "\n";
}catch(PDOException $e){
    echo $e->getMessage();
}
输出:连接成功
    Unquoted string: Nice
    Quoted string: &#39;Nice&#39;

2 chaînes dangereuses entre guillemets

<?php
$servername = "localhost";
$username = "root";
$password = "root123456";
$dbname   = "my_database";
 
try {
    $pdo = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    echo "连接成功"."<br>"; 
    // $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $pdo->setAttribute(PDO::ATTR_CASE, PDO::CASE_UPPER);
    $string = &#39;Naughty \&#39; string&#39;;
    print "Unquoted string: $string";
    echo "<br>";
    print "Quoted string:" . $pdo->quote($string);
    }
rrree

Recommandé : Résumé des questions d'entretien PHP 2021 (Collection) 》《tutoriel vidéo php

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