Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    189

    problemi con funzione system()

    avrei bisogno di redirigere l'output della funzione system() in una variabile senza stamparlo a video ma non so come fare. output è su più righe non devo prendere solo l'ultima

    questo è il codice di test che ho fatto

    echo "!";
    $output5=system("dig @ns2.google.com google.it A +short");
    echo "!
    !";
    $output6=system("dig @ns2.googlezzz.com google.it A +short");
    echo "!
    ";

    echo "|" .print_r($output5) ."|
    ";
    echo "|" .print_r($output6) ."|
    ";


    il secondo problema che non riesco a spiegarmi è:

    se eseguo da terminale

    dig @ns2.google.com google.it A +short

    ottengo

    216.239.59.104
    72.14.221.104
    66.249.93.104

    come anche da PHP

    se invece eseguo

    dig @ns2.googlezzz.com google.it A +short

    da terminale ottengo

    dig: Couldn't find server 'ns2.googlezzz.com': Name or service not known

    da PHP nulla

  2. #2
    Per il primo problema ti suggerisco di leggere la pagina del manuale ufficiale:

    http://www.php.net/system

    If you need to execute a command and have all the data from the command passed directly back without any interference, use the passthru() function.

    Comunque, perchè usare dig invece di una classe che implementi il protocollo DNS (es.Net_DNS)?

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    189
    perchè anche con passthru non ho trovato il modo di reindirizzare l'output in una variabile, ma solo stamparlo a video

    per la seconda domanda perchè non ho PHP5 ma 4 e con le classi DNS precedenti a dns_get_record (se son queste che intendi) non posso specificare il DNS da utilizzare

    oltretutto ho anche bisogno di ottenere messaggi più estesi come nell'interrogazione del record SOA

  4. #4
    perchè anche con passthru non ho trovato il modo di reindirizzare l'output in una variabile, ma solo stamparlo a video
    Ti consiglio di iniziare leggendo il manuale ufficiale:

    http://www.php.net/ob_start
    http://www.php.net/ob_get_clean

    per la seconda domanda perchè non ho PHP5 ma 4 e con le classi DNS precedenti a dns_get_record (se son queste che intendi) non posso specificare il DNS da utilizzare
    dns_get_record() è una funzione non una classe. Per Net_DNS intendo Net_DNS:

    http://www.pear.php.net/package/Net_DNS

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.