PDO::quote

(no version information, might be only in CVS)

PDO::quote --  Protège une chaîne pour l'utiliser dans une requête SQL PDO

Description

string PDO::quote ( string string [, int parameter_type] )

Avertissement

Cette fonction est EXPERIMENTALE. Cela signifie que le comportement de cette fonction, son nom et concrètement, TOUT ce qui est documenté ici peut changer dans un futur proche, SANS PREAVIS! Soyez-en conscient, et utilisez cette fonction à vos risques et périls.

PDO::quote() place des guillemets simples autour d'une chaîne d'entrée et échappe les guillemets simples présents dans la chaîne d'entrées, en utilisant le style de protection approprié au driver courant.

Si vous utilisez cette fonction pour construire des requêtes SQL, il est recommandé de plutôt préparer les requêtes et de lier les paramètres, ce n'est pas que plus simple, c'est aussi plus rapide.

Tous les drivers PDO n'implémentent pas cette méthode (comme PDO_ODBC). Utilisez les requêtes préparées à la place.

Liste de paramètres

string

La chaîne à échapper.

parameter_type

Fournit un type de données pour les drivers qui ont des styles alternatifs d'échappement. La valeur par défaut est PDO_PARAM_STR.

Valeurs de retour

Retourne une chaîne échappée qui est théoriquement sûr à passer dans une requête SQL. Retourne FALSE si le driver ne supporte pas la protection en ce sens.

Exemples

Exemple 1. Echappement d'une chaîne normale

<?php
$conn
= new PDO('sqlite:/home/lynn/music.sql3');

/* Chaîne simple */
$string = 'Nice';
print
"Chaîne non échappée : $string\n";
print
"Chaîne échappée : " . $conn->quote($string) . "\n";
?>

L'exemple ci-dessus va afficher :

Chaîne non échappée : Nice
Chaîne échappée: 'Nice'

Exemple 2. Echappement d'une chaîne dangereuse

<?php
$conn
= new PDO('sqlite:/home/lynn/music.sql3');

/* Chaîne dangereuse */
$string = 'Chaîne \' particulière';
print
"Chaîne non échappée : $string\n";
print
"Chaîne échappée :" . $conn->quote($string) . "\n";
?>

L'exemple ci-dessus va afficher :

Chaîne non échappée : Chaîne ' particulière
Chaîne échappée : 'Chaîne '' particulière'

Exemple 3. Echappement d'une chaîne complexe

<?php
$conn
= new PDO('sqlite:/home/lynn/music.sql3');

/* Chaîne complexe */
$string = "Co'mpl''exe \"ch'\"aîne";
print
"Chaîne non échappée: $string\n";
print
"Chaîne échappée : " . $conn->quote($string) . "\n";
?>

L'exemple ci-dessus va afficher :

Chaîne non échappée: Co'mpl''exe "ch'"aîne
Chaîne échappée: 'Co''mpl''''exe "ch''"aîne'

Voir aussi

PDO::prepare()
PDOStatement::execute()

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:54