PHP shell_exec目录
我在PHP中使用shell_exec,如果我在同一文件夹中使用可执行文件,它就可以工作,但如果我将可执行文件指向子文件夹,它就不再工作了 我有这个(有效的): 我想要这个(不起作用-它只是跳过执行): 哦,路径处于Windows模式 谢谢你们的帮助。尝试使用exec()和完整路径,而不是相对路径PHP shell_exec目录,php,exec,executable,shell-exec,subdirectory,Php,Exec,Executable,Shell Exec,Subdirectory,我在PHP中使用shell_exec,如果我在同一文件夹中使用可执行文件,它就可以工作,但如果我将可执行文件指向子文件夹,它就不再工作了 我有这个(有效的): 我想要这个(不起作用-它只是跳过执行): 哦,路径处于Windows模式 谢谢你们的帮助。尝试使用exec()和完整路径,而不是相对路径 $oldcwd = getcwd(); chdir($oldcwd+"/screens"); exec("makescreen.exe /url=".$link.""); chdir($old
$oldcwd = getcwd();
chdir($oldcwd+"/screens");
exec("makescreen.exe /url=".$link."");
chdir($oldcwd);
尝试将exec()与完整路径而不是相对路径一起使用
$oldcwd = getcwd();
chdir($oldcwd+"/screens");
exec("makescreen.exe /url=".$link."");
chdir($oldcwd);
注意绝对路径的差异。相对路径。执行路径。例如,您的目录结构是:
/home/my/php/script/test.php
/makescreen.exe
在php脚本中调用shell\u exec(makescreen.exe***)
在本例中,如果执行脚本,如cd/home/my/php/script&&php test.php
,那么执行路径是/home/my/php/script/
,scirpt将在执行路径中找到makescreen.exe
,这里是/home/my/php/script/
但是,如果您当前停留在/home/my
中并以这种方式使用php/home/my/php/script/test.php
,那么执行路径就是您的当前路径,这里是/home/my
,脚本将在/home/my
中找到makescreen.exe
,肯定失败
如果在脚本中使用/home/my/php/script/makescreen.exe
,这是绝对路径,无论您身在何处,它都会在/home/my/php/script/
中找到makescreen.exe
如果要将可执行文件放入子文件夹中。您可以在脚本中使用相对路径
子文件夹/makescreen.exe
,并确保脚本可以正确访问它 注意绝对路径的差异。相对路径。执行路径。例如,您的目录结构是:
/home/my/php/script/test.php
/makescreen.exe
在php脚本中调用shell\u exec(makescreen.exe***)
在本例中,如果执行脚本,如cd/home/my/php/script&&php test.php
,那么执行路径是/home/my/php/script/
,scirpt将在执行路径中找到makescreen.exe
,这里是/home/my/php/script/
但是,如果您当前停留在/home/my
中并以这种方式使用php/home/my/php/script/test.php
,那么执行路径就是您的当前路径,这里是/home/my
,脚本将在/home/my
中找到makescreen.exe
,肯定失败
如果在脚本中使用/home/my/php/script/makescreen.exe
,这是绝对路径,无论您身在何处,它都会在/home/my/php/script/
中找到makescreen.exe
如果要将可执行文件放入子文件夹中。您可以在脚本中使用相对路径
子文件夹/makescreen.exe
,并确保脚本可以正确访问它 谢谢,不过还是一样。这离服务器根目录已经有两层了,现在我想要另一个子文件夹——这和它有什么关系吗?我应该使用服务器根目录的绝对路径吗?谢谢,但还是一样。这离服务器根目录已经有两层了,现在我想要另一个子文件夹——这和它有什么关系吗?我应该使用来自服务器根目录的绝对路径吗?