2012-12-09 16 views
5

Sto tentando di eseguire un comando utilizzando shell_exec ma non restituisce alcun output. Quando copio il comando nel prompt dei comandi funziona come un incantesimo.shell_exec con percorso Windows non in esecuzione

Ecco il comando che sto cercando di eseguire.

$result = shell_exec('android update project -p "C:\xampp\htdocs\appBuilder" -t 1'); 

$result restituisce una stringa vuota. Quando eseguo il comando nel prompt dei comandi, viene visualizzato un messaggio che indica che il file build.xml è stato generato correttamente. Dovrebbe essere visualizzato il messaggio di successo in $result.

Se si esegue solo il comando android update project -p "C:\xampp\htdocs\appBuilder" -t 1 nel prompt dei comandi, funziona.

Nota: questo comando consente di generare un file build.xml per un'applicazione Android. Sto anche eseguendo questo su un server web locale usando xampp.

Qualcuno sa cosa sto facendo male?

+0

Che cosa sta succedendo o non sta accadendo esattamente? Cosa ti aspetti? – Charles

+0

Ho aggiornato la mia domanda. –

+0

potrebbe essere un semplice problema di percorso? dove esegui il comando mentre tieni il prompt dei comandi? e hai provato a eseguire lo stesso comando da una posizione diversa? –

risposta

3

Un doppia barra rovesciata\\ dovrebbe essere utilizzato per stampare una singola \ carattere (prima \ è usato per sfuggire alla seconda \):

$result = shell_exec('android update project -p "C:\\xampp\\htdocs\\appBuilder" -t 1'); 

anche assicurarsi PHP SAFE MODE è impostato su OFF.

Problemi correlati