Visualizzazione dei risultati da 1 a 2 su 2

Discussione: comando PHP shell_exec

  1. #1

    comando PHP shell_exec

    avrei un problema sulla chiamata del comando shell_exec.
    In pratica dovrei eseguire una scansione di network tramite il comando PING,
    Il problema sorge dopo un po che inizia il ciclo si blocca.
    Dal monitor di sistema non si vede nessuna degenerazione delle prestazioni e non comprendo da cosa possa nascere il problema.
    un dubbio l'avrei nel comando shell_exec che possa intasare il server o altro ma non so come evitarlo.
    Qualchuno può aiutarmi a capire ??? Grazie

    sotto riporto il codice della funzione
    in meta linguaggio :

    apro database
    eseguo una query sul range di indirizzi
    ciclo sul risultato della query
    if ping_function($ip)
    eseguo operazioni OKPing
    else
    eseguo operazioni PingKo
    fine ciclo


    function ping_function($ip)
    {
    /*
    esegue un ping verso l'indirizzo $ip.
    se va a buon fine ritorna il time in ms
    se non funziona ritorna un valore -1

    es. if(ping_function("10.118.12.90") < 0)
    echo("Ping fallito")
    else
    echo("il Ping funziona");
    */
    set_time_limit(30);
    // Eseguzione del cpmando di Ping dal sistema
    if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN')
    {
    $command = shell_exec("ping -n 1 $ip"); // MS Windows Ping command
    //$command = shell_exec("ping -n 1 -w 1000 -a $ip"); // MS Windows Ping command
    }
    else
    {
    $command = shell_exec("ping -c 1 $ip"); // UNIX/Linux Ping command
    }
    //echo("
    risultato Comando Ping
    ".$command);
    // controllo il risultato del ping
    if (eregi("scadut", $command))
    { // controllo se è in time out
    $mstime = -1;
    }

    else { // ping worked so get the time
    $mstime = 0.0;
    $bp = stripos($command, "durata")+7;
    $ep = stripos($command, "ms");
    $mstime = substr($command, $bp, $ep-$bp);
    }
    //echo("

    Tempo mstime --> $mstime");
    unset($command);
    return($mstime);
    }

  2. #2

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.