shell_exec with windows path not running [closed]

2019-04-28 16:11发布

问题:

I am trying to run a command using shell_exec but its not returning any output. When I copy the command into command prompt it works like a charm.

Here is the command I'm trying to run.

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

$result is returning an empty string. When I run the command in command prompt, it shows a message saying the build.xml file was generated successfully. It should be showing the success message in $result.

If I run just the command android update project -p "C:\xampp\htdocs\appBuilder" -t 1 in command prompt, it works.

FYI: This command is to generate a build.xml file for an android application. I'm also running this on a local web server using xampp.

Anyone know what I'm doing wrong?

回答1:

A double backslash \\ should be used to print a single \ character (first \ is used to escape the second \):

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

Also make sure PHP SAFE MODE is set to OFF.