bien, pues aquí te doy un poco de teoría:
Código PHP:
<?php
echo 'Hola mundo';
?>
según el manual de
eval()
Cita: Existen algunos factores que hay que tener en cuenta cuando se usa eval(). Recuerde que la cadena pasada debe ser código PHP válido, incluyendo aspectos como la finalización de las sentencias con un punto y coma, ya que así el analizador no terminará en la línea que va después de eval(), y escapar de manera apropiada cosas en code_str. Para mezclar salida HTML y código PHP se puede usar una etiqueta de cierre de PHP para dejar el modo PHP.
[...]
La cadena de código a ser evaluada. code_str no tiene que contener etiquetas de apertura de PHP.
Una sentencia return finalizará inmediantamente la evaluación de la cadena.
osea, que para que funcione bien debería ser algo así:
Código PHP:
<?php
// MAL
$code_str = "<?php echo 'Hola mundo'; ?>";
// BIEN
$code_str = "echo 'Hola mundo';";
?>
y en resumen eso es todo, después solo debes aplicar
base64_encode() para codificar el código:
Código PHP:
$code_str_base64 = base64_encode($code_str);
finalmente tu script debe ejecutar tan solo el código que ya esta ofuscado:
Código PHP:
eval(base64_decode($code_str_base64));
espero que se entienda algo, deberías hacer la prueba por ti mismo y así nos sacas de dudas...