(PHP 4, PHP 5)
addslashes — Ajoute des antislashs dans une chaîne
$str
)
Retourne la chaîne str
, après avoir échappé tous
les caractères qui doivent l'être, pour être utilisée dans une requête
de base de données. Ces caractères sont les guillemets simples
('), guillemets doubles ("),
antislash (\) et NUL (le caractère NULL
).
Un exemple d'utilisation d' addslashes() est lorsque vous entrez des données dans une base de données. Par exemple, pour insérer le nom O'reilly dans la base, vous aurez besoin de le protéger. Il est fortement recommandé d'utiliser les fonctions de protection spécifiques à chaque base de données (telle que mysqli_real_escape_string() pour MySQL et pg_escape_string() pour PostGreSQL), mais si la base de données que vous utilisez n'a pas de fonction spécifique, et que cette base utilise \ pour protéger les caractères spéciaux, vous pouvez utiliser cette fonction. Grâce à elle, \ sera ajouté. Si la directive PHP magic_quotes_sybase est activée, ' sera protégé par un autre '.
La directive PHP magic_quotes_gpc est à on par défaut avant PHP 5.4, et elle appelle addslashes() sur toutes les données GET, POST et COOKIE. N'utilisez pas addslashes() sur des données déjà protégées avec magic_quotes_gpc sinon vous doublerez les protections. La fonction get_magic_quotes_gpc() est utile pour vérifier ce paramètre.
str
La chaîne à échapper.
Retourne la chaîne échappée.
Exemple #1 Exemple avec addslashes()
<?php
$str = "Votre nom est-il O'reilly ?";
// Affiche : Votre nom est-il O\'reilly ?
echo addslashes($str);
?>