Forum und email

escapeshellcmd

(PHP 4, PHP 5)

escapeshellcmd — Escapar meta-caracteres del intérprete de comandos

Descripción

string escapeshellcmd ( string $comando )

escapeshellcmd() escapa cualquier caracter en una cadena que pueda ser usado para engañar a un comando de shell a que ejecute comandos arbitrarios. Esta función puede ser usada para asegurarse de que cualquier dato viniendo de la entrada del usuario sea escapado antes de que este dato sea pasado a las funciones exec() o system(), o al operador de comilla invertida.

Los siguientes caracteres son precedidos por una barra invertida: #&;`|*?~<>^()[]{}$\, \x0A y \xFF. ' y " son escapados únicamente si no están emparejados. En Windows, todos estos caracteres mas % son reemplazados por un espacio en su lugar.

Lista de parámetros

comando

El comando a ser escapado.

Valores retornados

La cadena escapada.

Ejemplos

Example#1 Ejemplo de escapeshellcmd()

<?php
$e 
escapeshellcmd($entrada_usuario);

// aqui no nos importa si $e tiene espacios
system("echo $e");
$f escapeshellcmd($nombre_archivo);

// y aqui si, asi que usamos comillas
system("touch \"/tmp/$f\"; ls -l \"/tmp/$f\"");
?>