Maison >base de données >tutoriel mysql >Comment lier correctement les valeurs LIKE avec les symboles de pourcentage final dans PDO ?
Liaison de valeurs LIKE avec PDO
Dans une requête de base de données, les opérateurs LIKE sont utilisés pour effectuer des recherches par caractères génériques. Lors de la liaison de valeurs LIKE à l'aide de l'extension PDO, il est important de gérer correctement le symbole de pourcentage final.
Lier les valeurs LIKE avec le symbole de pourcentage final
Dans la requête fournie, vous souhaitez lier la variable $partial%. L'approche correcte consiste à utiliser un espace réservé avec un signe de pourcentage à la fin :
select wrd from tablename WHERE wrd LIKE :partial%
où :partial est lié à $partial="somet", avec le symbole de pourcentage ajouté automatiquement.
Approches alternatives
Bien que l'approche ci-dessus soit standard, vous pouvez également Considérez :
SELECT wrd FROM tablename WHERE wrd LIKE CONCAT(:partial, '%')
Cette approche reporte la concaténation de chaînes à MySQL.
Échappement des caractères spéciaux
Si la partie Le mot recherché contient des caractères spéciaux tels que %, _ ou , un échappement supplémentaire est nécessaire. Utilisez l'approche suivante :
$stmt= $db->prepare("SELECT wrd FROM tablename WHERE wrd LIKE :term ESCAPE '+'"); $escaped= str_replace(array('+', '%', '_'), array('++', '+%', '+_'), $var); $stmt->bindParam(':term', $escaped);
En échappant ces caractères, vous vous assurez qu'ils sont interprétés correctement dans la condition LIKE.
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!