New question

Question:

Date: 04-10-2020 17:14:43 (In Spanish)

Aporte Servicio de Procesamiento por Consola en Windows[Unresolved]

Buena noche a todos.
El día de hoy quiero compartir con ustedes un script desarrollado para Windows muy funcional para ejecutar tareas PHP de manera automática a través de la consola o Cli.

El problema:
En muchos de nuestros desarrollos necesitamos ejecutar tareas en el servidor ya sea para no ocupar el procesamiento del cliente o simplemente para ejecutar tareas alternativas o paralelas al funcionamiento en frontend Ej: envió de correos, SMS, o ejecuciones periódicas de algún calculo o proceso, se que en Linux existe cron job, pero en windows el programador de tareas no es muy amigable para esta labor.

Ejempo de entrada de argumentos en PHP
index.php

//Donde $argv[0] es el script que estamos ejecutando
// Donde $argv[1] es el Valor o comando que queremos ejecutar 
//Validamos la entrada de los argumentos 
if (isset($argv[0]) && isset($argv[1])) {
    $Argumento = $argv[1];
    switch ($Argumento) {
        case 'EnviarSMS':
            echo FuncionEnviaSMS() . PHP_EOL;
            break;
        case 'NotificarCorreos':
            echo FuncionEnviaCorreos() . PHP_EOL;
            break;
        case 'CorrerProcesosDiario':
            echo FuncionProcesosDiario('Procesado Ok') . PHP_EOL;
            break;
        default:
            echo 'Argumento Invalido' . PHP_EOL;
            break;

    }
}
// ejemplo sencillo de como leer comandos en la consola PHP


Funcinamiento del Scritp desarrollado

el script tiene un archivo de configuración donde le diremos la ruta de nuestro proyecto a ejecutar, en los métodos ponemos el argumento que queremos enviar a la consola de php

procesos.json

{
  "procesos": [
    {
      "nombre": "ProcesosAutomaticos",
      "ruta": "C:\\xampp\\htdocs\\prueba",
      "exe": "php index.php",
      "metodo": [
        { "nombre": "EnviarSMS", "tipo": "lineal" },
		{ "nombre": "NotificarCorreos", "tipo": "lineal" },
        { "nombre": "CorrerProcesosDiario", "tipo": "lineal" },
      ]
    }
  ]
}



finalmente ejecutamos ProcesadorCMD.exe y este nos ejecutara periódicamente los argumentos, internamente puedes crear un sistema de horarios y demás

dejo el link para que puedan descargarlo es muy útil y eficaz Saludos


Procesador CMD PHP


Tags: Console - Cron Jobs - Microsoft - PHP - PHP Advanced Votes: 2 - Answers: 1 - Views: 5 Share on: Google Facebook Twitter LinkedIn Link
 

Answers:

  • Date: 14-10-2020 11:58:01 Interesante aporte el tuyo [+1]
    Muchas gracias por compartirlo con la comunidad,seguro que a alguien le servirá
    Saludos
      Votes: 0 - Link answer
     
To actively participate in the community first must authenticate, enter the system.Sign In