jueves, 21 de noviembre de 2013

Cómo ejecutar PHP sobre Perl

El lenguaje de programación Perl puede llamar a otros scripts y programas de software, incluyendo scripts PHP. Esto se hace normalmente cuando se necesita para integrar Perl en un sitio web PHP, o si necesita llamar a un script de Perl que sólo es capaz de ser escrito en PHP. Una vez que el código PHP se ha ejecutado en Perl, Perl sigue funcionando el resto de su código como normal. 



Abra su programa Perl interior de su editor preferido Perl.



Pulse Enter para crear una nueva línea en la sección de su código Perl en el que desea ejecutar el archivo PHP.



Tipo extRun (your_php_file.php, PHP), en la nueva línea. Esta función se llama al archivo your_php_file.php, y le dice a Perl que el archivo debe ser ejecutado como código PHP.



 

1 comentario:

  1. Hola:

    Yo necesitaba hacer justamente esto, ejecutar un script PHP desde PERL y capturar la salida del script PHP desde PERL.

    La función extRun que comentas en Perl no me funciona y no he encontrado tampoco referencias a esta función en internet.

    La solución que he hallado ha sido la siguiente:
    system("php miarchivophp.php > error.txt")

    Utilizo SYSTEM en lugar de usar el comando entre acentos (`php miarchivophp.php`) porque SYSTEM regresa a PERL únicamente cuando PHP ha finalizado, mientras que si utilizo el comando entre acentos `` la ejecución de PERL continua inmediatamente sin esperar a que finalice PHP, lo cual hace que no pueda capturar los resultados de forma segura.

    Además no tengo forma directa de capturar las salidas de pantalla ECHO de PHP desde PERL como sucede cuando ejecuto un comando del sistema operativo como DIR, por lo que he tenido que modificar el código PHP para que me guarde los resultados en un archivo de texto que luego puede puedo leer desde PERL.

    También he tenido que poner de forma explicita el comando ">error.txt" dentro de SYSTEM para que en caso de que se produzca algún error inesperado en la ejecución de PHP el mensaje de error quede guardado en el archivo error.txt sin mas complicaciones. Si no hago esto y el script de PHP falla, se interrumpte de forma inmediata la ejecución de PERL.

    Bueno, espero que os sirva de ayuda a quien esté tratando este tema.

    Un saludo.

    Miquel Bordera Saladie

    ResponderEliminar