我想使用shell_exec
运行curl
并获得响应。
问题是,当我运行curl
时,我的shell exec命令不起作用,而当我在curl
或cmd
中运行cygwin
时,它的运行正常。
我正在使用laravel 5.6和php 7.2
我可以跑步:
shell_exec(“ ping domain.com”);
它返回响应,就像以前一样。
但是我不能跑步:
shell_exec(“在这里卷曲一些东西”);
当我使用null
时,它会给我dd()
;当我print_r()
时,它会给我空白。
我知道我可以使用食尸鬼,但是我只是想知道为什么它不起作用。
答案 0 :(得分:0)
请考虑使用PHP Curl(启用PHP curl扩展是必需的)。这是一种更安全的方法-您不需要在许多共享主机上访问shell +,它已被禁用-,并且也可以在Windows下本机运行。
您要解决的问题可能是由于缺少PATH引起的。这就是为什么它可以在cygwin中运行,而不是在本机shell下运行的原因。请注意,PHP执行程序位于本机外壳中。