Maison >développement back-end >tutoriel php >Comment lier efficacement les valeurs LIKE dans les requêtes PDO ?
Liaison de valeurs LIKE dans PDO
Lors de l'utilisation de requêtes LIKE dans PDO, il est crucial de comprendre comment lier correctement la valeur de recherche pour éviter les imprévus résultats.
Liaison avec correspondance partielle
Pour lier une correspondance partielle, vous pouvez utiliser la syntaxe suivante :
SELECT wrd FROM tablename WHERE wrd LIKE :partial
Lier le paramètre : partiel à la valeur partielle que vous souhaitez rechercher. Par exemple, si vous avez $partial = "somet", vous le lierez comme :
$stmt->bindParam(':partial', $partial);
Liaison avec un caractère générique
Pour lier une correspondance partielle avec un caractère générique à la fin, vous pouvez utiliser l'une de ces méthodes :
Caractère générique généré par PDO :
Utilisez la syntaxe suivante :
SELECT wrd FROM tablename WHERE wrd LIKE ':partial%'
Liez le paramètre :partial à la valeur partielle sans le caractère générique.
Caractère générique généré par SQL :
Utilisez le syntaxe suivante :
SELECT wrd FROM tablename WHERE wrd LIKE CONCAT(:partial, '%')
Liez le paramètre :partial à la valeur partielle sans le caractère générique.
Requêtes LIKE complexes
Si la valeur partielle contient des caractères spéciaux tels que %, _ ou , vous devez les échapper pour éviter des résultats inattendus. Utilisez le code suivant :
$stmt = $db->prepare("SELECT wrd FROM tablename WHERE wrd LIKE :term ESCAPE '+'"); $escaped = str_replace(array('+', '%', '_'), array('++', '+%', '+_'), $var); $stmt->bindParam(':term', $escaped);
En suivant ces directives, vous pouvez lier efficacement les valeurs LIKE dans vos requêtes PDO.
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!