Ciao a tutti, devo far eseguire un'operazione da linea di comando sul server per scompattare dei file utilizzando IZArc.
Ora vorrei verificare che tale operazione sia andata a buon fine e nel caso catturare eventuali errori durante la scompattazione.
Il codice è il seguente:
Ora, in qualsiasi caso la funzione system() mi restiruisce un errore (mi dà un PHP Notice) SEPPUR portando a termine correttamente la scompattazione!codice:function estraiFile_indiciCSV($file){ eliminaFileEsistenti($file); echo " Estrazione dei file \n"; system('..\\script\\bin\\IZArc\\IZArc -ef '.getcwd().'\\temp '.$file, $return_var); if($return_var === false){ trigger_error(" Errore durante l'estrazione del file .zip \n"); }else if($return_var == 0){ //echo "returned var ".$return_var." \n"; trigger_error(" Errore durante l'estrazione del file .zip \n"); }else{ //echo "returned var ".$return_var." \n"; echo " File estratti con successo \n"; } }
La funzione mi restituisce il valore 0 entrando quindi nel secondo if.
Da manuale, dovrebbe restituire false se fallisce, ma quel controllo non lo degna di uno sguardo...
Ci tengo a sottolineare che pure exec() e passthru() fanno la stessa cosa...![]()


Rispondi quotando
