Detener la ejecución de una función después de un tiempo determinado en PHP

Detener la ejecución de una función después de un tiempo determinado en PHP

Tengo cinco exec()funciones en mi script. Quiero configurarlo para que si una función no responde en un momento determinado, la función se elimine y la siguiente función comience su ejecución.

<?php
    exec("timeout 5 /usr/local/bin/wrun 'uptime;ps -elf|grep httpd|wc -l;free -m;mpstat'",$uptime);  
    exec("timeout 5 /usr/local/bin/trun 'uptime;ps -elf|grep httpd|wc -l;free -m;mpstat'",$uptime);  
    exec("timeout 5 /usr/local/bin/drun 'uptime;ps -elf|grep httpd|wc -l;free -m;mpstat'",$uptime);
 ?> 

En esto el timeoutargumento no funciona. Corrija esto o deme un método alternativo.

Respuesta1

su sintaxis ejecutiva es incorrecta

string exec ( string $command [, array &$output [, int &$return_var ]] )

Tienes que establecer un límite de tiempo antes de comenzar tu código, algo como esto

<?php

set_time_limit(5);

exec(" /usr/local/bin/wrun 'uptime;ps -elf|grep httpd|wc -l;free -m;mpstat'",$uptime);
?>

información relacionada