(PHP 4, PHP 5)
addslashes — Añade barras invertidas a una cadena
$str
)
Devuelve una cadena con barras invertidas delante de los
carácteres que necesitan escaparse en situaciones como consultas
de bases de datos, etc. Los carácteres que se escapan son la
comilla simple ('), comilla doble
("), barra invertida (\) y
NUL (el byte NULL
).
Un ejemplo de uso de la función addslashes() es cuando se introduce información en una base de datos. Por ejemplo, para insertar el nombre O'reilly en una base de datos, debe escaparse previamente. Es muy recomendado usar la función de escape de la misma Bade de Datos (DBMS) (por ejemplo mysqli_real_escape_string() para MySQL o pg_escape_string() para PostgreSQL), pero si la Base de Datos (DBMS) que se está usando no tiene una función de escape y usa la barra invertida \ para escapar caracteres especiales, puede utilizar esta función. Esto sólo será para obtener los datos en la base de datos, La barra invertida \ extra no será insertada. Si la directiva PHP magic_quotes_sybase tiene el valor on entonces las comillas simples de tipo 'se escapan añadiendo otra comilla simple adelante. '.
La directiva de PHP magic_quotes_gpc estaba activada (on) por defecto antes de PHP 5.4, y básicamente ejecutaba la función addslashes() en todos los datos GET, POST y COOKIE. No utilizar addslashes() en las cadenas que ya se han escapado con magic_quotes_gpc ya que se hará un doble escape. La función get_magic_quotes_gpc() puede ser práctico para comprobar esto.
str
La cadena a escapar.
Devuelve una cadena con escapes.
Ejemplo #1 Un ejemplo de addslashes()
<?php
$str = "Is your name O'reilly?";
// Outputs: Is your name O\'reilly?
echo addslashes($str);
?>