Parar a execução de uma função após um determinado tempo em PHP

0

Eu tenho cinco exec() funções no meu script. Eu quero configurá-lo para que, se uma função não responder em um determinado momento, a função será eliminada e a próxima função iniciará sua execução.

<?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);
 ?> 

Neste, o argumento timeout não está funcionando. Por favor, corrija isso ou me dê um método alternativo.

    
por tomas jindal 24.03.2014 / 10:37

1 resposta

1

o seu sysntax exec está errado

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

Você precisa definir um limite de tempo antes de começar seu código, algo parecido com isto

<?php

set_time_limit(5);

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