Maison >développement back-end >tutoriel php >Quels caractères sont valides pour les espaces réservés PDO en PHP ?

Quels caractères sont valides pour les espaces réservés PDO en PHP ?

DDD
DDDoriginal
2024-12-06 08:18:16827parcourir

What Characters Are Valid for PDO Placeholders in PHP?

Caractères d'espace réservé PDO valides

Travailler avec des espaces réservés en PHP avec PDO peut être délicat lorsqu'il s'agit de sélectionner des caractères valides. Pour approfondir les détails, examinons d'abord l'exemple de code fourni :

$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
    FROM fruit
    WHERE calories < :calories AND colour = :colour');
$sth->bindParam(':calories', $calories, PDO::PARAM_INT);
$sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12);
$sth->execute();

Dans cet exemple, nous utilisons l'espace réservé ":colour". Quels caractères sont considérés comme valides pour les espaces réservés ? La réponse réside dans le code source. Après inspection, nous découvrons l'expression régulière suivante :

BINDCHR     = [:][a-zA-Z0-9_]+;

Cela signifie qu'un espace réservé doit être composé des éléments suivants :

  • Un deux-points facultatif (:)
  • Au moins un caractère alphanumérique (a-z, A-Z, 0-9)
  • Un trait de soulignement final facultatif (_)

Par conséquent, les caractères fictifs valides incluent :

  • Toutes les lettres minuscules (a-z)
  • Toutes les lettres majuscules (A-Z)
  • Tous les chiffres (0-9)
  • Le caractère de soulignement (_)

Les traits d'union (-), comme mentionné dans la question, ne sont pas des caractères valides. Les caractères alphanumériques avec traits de soulignement offrent une gamme pratique et complète d'options pour les noms d'espaces réservés.

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