doutuo7609 2018-08-16 07:53
浏览 452
已采纳

我可以从命令行运行curl但不能从shell exec调用

I want to use shell_exec to run curl and get the response. The problem is that my shell exec command doesn't work when I run curl, it works fine when I run curl in cmd or cygwin. I'm using laravel 5.6 with php 7.2

I can run:

shell_exec("ping domain.com");

It return response like it has used to.

But I can't run:

shell_exec("curl some thing here");

It gives me null when I use dd() or blank when I print_r().

  • My curl version 7.61 windows 10 64bit, open ssl 1.1.0i
  • Already set path system variable on environment

I know I can use guzzle, but I am just wondering why it doesn't work.

  • 写回答

2条回答 默认 最新

  • dourang6858 2018-08-16 08:10
    关注

    Consider using PHP Curl (IT's necessary to enable PHP curl extension). It's a safer way - You dont need to access shell + on many shared hostings, it's disabled - and also works natively under Windows.

    The problem you are fighting off is caused probably by missing PATH. That's why it works in cygwin, not under native shell. Note that PHP execs in native shell.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程