eval

(PHP 3, PHP 4, PHP 5 )

eval -- Evaluar una cadena como código PHP

Descripción

mixed eval ( string cadena_codigo )

eval() evalúa la cadena dada en cadena_codigo como código PHP. Entre otras cosas, esto puede ser útil para almacenar código en un campo de texto en una base de datos para su ejecución posterior.

Existen algunos factores a tener en cuenta cuando se usa eval(). Recuerde que la cadena pasada debe ser código PHP válido, incluyendo cosas como la terminación de sentencias con un punto-y-coma de modo que el intérprete no falle en la línea siguiente al llamado a eval(), y escapar apropiadamente las cosas en cadena_codigo.

Recuerde también que las variables que reciben valores bajo eval() conservarán esos valores en el script principal más adelante.

Una sentencia return finalizará la evaluación de la cadena inmediatamente. A partir de PHP 4, eval() devuelve NULL a menos que se llame return en el código evaluado, en cuyo caso el valor pasado a return es devuelto. En caso de que ocurra un error de análisis sintáctico en el código evaluado, eval() devuelve FALSE. En caso de que ocurra un error fatal en el código evaluado, el script completo finaliza. En PHP 3, eval() no devuelve un valor.

Ejemplo 1. Ejemplo de eval() - unión de texto simple

<?php
$cadena
= 'taza';
$nombre = 'cafe';
$cad = 'Esta es una $cadena con mi $nombre en ella.';
echo
$cad. "\n";
eval(
"\$cad = \"$cad\";");
echo
$cad. "\n";
?>

El resultado del ejemplo seria:

Esta es una $cadena con mi $nombre en ella.
Esta es una taza con mi cafe en ella.

Sugerencia: Como con todo lo que presenta un resultado directamente en el navegador, se pueden utilizar las funciones de control de salida para capturar el resultado de esta función y grabarlo - por ejemplo - en una string.

Vea también call_user_func().

Hosting by: hurra.com
Generated: 2007-01-26 18:00:57