Come per consentire l'uso delle funzioni PHP di sistema

January 3

Se volete che il vostro script PHP per eseguire un programma esterno in background, è necessario utilizzare le funzioni di esecuzione del sistema built-in di PHP. Alcuni motivi per eseguire un programma esterno includono voler visualizzare un elenco di file in una cartella, l'esecuzione di un programma di conversione di immagini in un file caricato o un amministratore di lanciare un programma di utilità di registrazione. Decidere quale funzione PHP da utilizzare dipende da come si desidera che l'output del programma da trattare.

istruzione

1 Si connette al server che ospita la pagina Web utilizzando un client FTP.

2 Individuare e scaricare il file "php.ini" del server. Se non si conosce il percorso del file, è possibile trovare il suo percorso eseguendo "<? Php phpinfo ();?>" Sul server e cercando la riga che inizia con "(php.ini) Path file di configurazione. "

3 Cercare il file per la riga che inizia con "safe_mode =" e modificare il testo da "safe_mode = On" per "safe_mode = Off", se necessario.

4 Salvare il file "php.ini" se sono state apportate modifiche, e poi caricarlo nuovamente al server utilizzando il client FTP.

5 Riavviare il server Web se è stato modificato il file "php.ini".

6 Aprire il file sorgente PHP della tua pagina Web in un editor di testo, come Blocco note di Windows.

7 Chiamare il "sistema (comando)" la funzione di eseguire un programma di sistema. Testo dal programma viene inviato al flusso di output. Se il programma continua a funzionare, assicurarsi che la sua uscita viene inviato a un flusso di output, o PHP si bloccherà in attesa che il programma finisca.

Ad esempio, "$ my_output = sistema ( 'ls', $ ret_value);" chiamerà il comando del sistema "ls" e restituire l'ultima riga di output alla stringa "my_output".

8 Chiamare il "exec (comando, uscita)" funzione se si desidera che tutto l'output di testo del programma per essere diretto alla vostra "uscita" di matrice variabile anziché al flusso di output del sistema. Ad esempio, "exec ( 'ls', $ output = array ());".

9 Salvare il file PHP e caricarlo sul vostro server per assicurarsi che funzioni correttamente. Se il programma non viene eseguito, assicurarsi che la sintassi del codice è corretto e che i permessi dei file del programma sono impostate per consentire l'esecuzione.

Consigli e avvertenze

  • Utilizzare "escapeshellarg ()" o "escapeshellcmd ()" per la sicurezza quando si utilizzano i dati dei visitatori fornito nella stringa di comando.
  • comandi PHP devono essere contenute all'interno di "<? php" e "?>" tag.