Escapar las comillas simples y dobles con PHP addslashes y PHP stripslashes va a ser tarea fácil.
Estas funciones de PHP resultan muy útiles cuando trabajamos con BBDD. Las suelo utilizar mayórmente en los INSERT y UPDATE que es cuando el usuario inserta datos vía formulario.
Otras entradas interesantes son:
- PHP strpos() y strrpos()
- PHP preg_match()
- PHP substr_count()
- PHP strrchr()
- PHP strip_tags()
- PHP htmlspecialchars()
Sintaxis de PHP addslashes
PHP addslashes escapa con barra invertida ‘\’ las comillas simples y dobles. Os muestro la sintaxis de esta función sacada de su web oficial.
1 |
string addslashes ( string ) |
Tal y como vemos en el código superior, addslashes devuelve un string resultante de la cadena enviada.
Ejemplo de PHP addslashes
Voy a realizar un ejemplo de PHP addslashes para ver su funcionamiento:
1 2 3 4 5 6 7 8 9 10 11 |
<?php //string con comillas simples $cadena_con_comillas_simples = "aquí ' hay una comilla simple escapada"; echo addslashes($cadena_con_comillas_simples); ?> <br> <?php //string con comillas dobles $cadena_con_comillas_dobles = 'aquí " hay comillas dobles escapadas'; echo addslashes($cadena_con_comillas_dobles); ?> |
En el código superior vemos como se escapan las comillas simples y comillas dobles. Tan solo tenemos que pasarle a la función addslashes la cadena a formatear.
Sintaxis de PHP stripslashes
PHP stripslashes quita las barras de escape de una cadena de texto. Os pongo a continuación su sintaxis extraída de su web oficial.
1 |
string stripslashes( string ) |
Al igual que addslashes, PHP stripslashes devuelve una cadena de texto.
Ejemplo de PHP stripslashes
Para conocer mejor esta función os he realizado este ejemplo de PHP stripslashes.
1 2 3 4 5 6 7 |
<?php //string con comillas simples $cadena_con_comillas_simples_escapadas = addslashes("aquí ' hay una comilla simple escapada"); echo $cadena_con_comillas_simples_escapadas; $cadena_con_escape_quitado = stripslashes("aquí ' ya no hay una comilla simple escapada"); echo "<br>".$cadena_con_escape_quitado; ?> |
En el código superior he realizado justo el escape opuesto, es decir, he quitado las barras de escape de las comillas simples.
Espero que os sirvan estas 2 funciones de escape de caráteres para vuestros scripts.