Funciones de strings
PHP Manual

addcslashes

(PHP 4, PHP 5)

addcslashesEscapa una cadena de la misma forma que lo hace C

Descripción

string addcslashes ( string $str , string $charlist )

Devuelve una cadena con barras invertidas antes de los caracteres que aparecen en el parámetro charlist

Parámetros

str

La cadena a escapar.

charlist

Una lista de caracteres que seran escapados. Si charlist contiene caracteres como \n, \r etc., seran convertidos en la misma forma que el estilo de C, mientras que los caracteres con códico ASCII inferior a 32 y superior a 126 son convertidos a representación octal.

Cuando se define una secuencia de caracteres en el argumento charlist asegúrese de que se quieren escapar todos los caracteres incluidos en el rango.

<?php
echo addcslashes('foo[ ]''A..z');
// output:  \f\o\o\[ \]
// All upper and lower-case letters will be escaped
// ... but so will the [\]^_`
?>
Además, si el primer carácter del rango tiene un valor ASCII superior al segundo carácter que define el rango, no se puede formar el rango. En otras palabras, no se pueden definir rangos descendentes y por tanto solo se escaparán el primer carácter del rango, el segundo y los puntos que separan a los caracteres. Para obtener el valor ASCII de un carácter, se puede emplear la función ord().
<?php
echo addcslashes("zoo['.']"'z..A');
// output:  \zoo['\.']
?>

Se debe tener en cuenta que si decide escapar los caracteres 0, a, b, f, n, r, t y v, se convertirán en \0, \a, \b, \f, \n, \r, \t y \v. En PHP \0 (NULL), \r (retorno de carro), \n (nueva línea), \ f (avance de página), \ v (tabulador vertical) y \ t (tabulador) son secuencias de escape predefinidas, mientras que en C todos los caracteres mencionados anteriormente son secuencias de escape predefinidas.

Valores devueltos

Devuelve una cadena con escapes

Historial de cambios

Versión Descripción
5.2.5 Las secuencias de escape \v y \f se han añadido.

Ejemplos

charlist como "\0..\37", escaparía a todos los caracteres con código ASCII entre 0 y 31.

Ejemplo #1 Ejemplo addcslashes()

<?php
$escaped 
addcslashes($not_escaped"\0..\37!@\177..\377");
?>

Ver también


Funciones de strings
PHP Manual