PDA

View Full Version : [PHP] Exec di programmi infiniti ed output su file


lore_barto
29-07-2010, 15:51
Salve a tutti,

ho un problema legato alla funzione exec.
Devo eseguire un comando sulla shell, prenderne l'output ed inserirlo in un file.
Avevo risolto facendo:
- eseguo il programma con exec(comando,output,risultato) dove output è un array
- apro il file con fopen
- uso foreach per scrivere tutti gli elementi di output sul file
- chiudo il file

Il problema è che il programma avviato con exec è infinito e per farlo terminare da shell devo usare ctrl+c.
Quando eseguo dal browser la pagina php rimane sempre a caricare e devo interromperla. Interrompendola non mi salva nemmeno l'output nel file, dato che è un'istruzione successiva ad exec ed io la interrompo prima.

Come posso fare a leggere almeno quello che è stato inviato in output quando era in esecuzione (finchè non lo interrompo per intenderci)?
Nel manuale http://php.net/manual/en/function.exec.php c'è scritto, nella prima nota, che se il programma deve continuare a girare in background reindirizzare l'output su un file (se ho capito bene è proprio quello che voglio io).

Come faccio a reindirizzare l'output in un file invece che in un vettore?