Hola, como van todos, muchachos tengo un pequeño problema con el eval si alguien me puede ayudar de corazon se lo agradezco.

lo que intento es ejecutar un codigo php que se encuentra en un archivo externo a travez de una funcion y el comando eval y el contenenido de ese archivo grabarlo en una variable


tengo el siguiente codigo.
mostrar.php

Código PHP :

function abrir_archivo ($archivo) {
      $fileftp  = fopen($archivo,"r"); 
       while (!feof($fileftp)) 
         {$contenido .= fgets($fileftp, 2048); }
         fclose($fileftp);
      return $contenido;
}

function generar ($archivo) {
      $p = 10;
      $code = abrir_archivo($archivo);
       eval($code);

   }

       $codigo_nuevo = generar("numero.php");
   
   echo "Su numero de entrada es " .  $codigo_nuevo ;
?>

numero.php

Código PHP :

for ($i=0;$i<$p;$i++) { $increment++; echo "$increment"; } 

si ejecutan el anterior codigo NO les saca error pero pone la informacion donde no es :(

Código HTML :

12345678910 
Su numero de entrada es 

y la idea es que me salga

Código HTML :

Su numero de entrada es  12345678910 

ahora si en la function generar en la parte del eval lo cambio por

Código PHP :

function generar ($archivo) {
      $p = 10;
      $code = abrir_archivo($archivo);
      eval("\$code = \"$code\";");
      return $code;
}

debo cambiar a numero.php por unos \ para que no genere error

Código PHP :

for (\$i=0;\$i<\$p;\$i++) { \$increment++; echo \"\$increment\"; } 

en este caso si me impreme donde yo quiero pero no me ejecuta el codigo

Código HTML :

Su numero de entrada es  for ($i=0;$i<$p;$i++) { $increment++; echo "$increment"; } ;


¿que estoy haciendo mal? ¿quien me puede decir como corregir ese codigo?

Gracias