【问题标题】:cURL issue using laravel 5使用 laravel 5 的 cURL 问题
【发布时间】:2017-11-27 14:50:54
【问题描述】:

当我使用 curl 获取 html 页面的内容时,我得到了一个看起来像脚本的有线内容。你能告诉我我的代码有什么问题吗?这个有线内容是什么?

有我的控制器:

$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_RETURNTRANSFER => 1,
    CURLOPT_URL => 'https://twitter.com',
));

$data = curl_exec($curl);
dd($data);
curl_close($curl);

还有它的样子 console.

感谢您的所有回答。

【问题讨论】:

  • dd()dump and die,它会停止它下面的所有执行。如果要查看$data 中返回的数据,请考虑使用\Log::info($data);。话虽如此,如果$data 是不可记录的东西,例如stdClass Object,它可能会出错

标签: php laravel curl laravel-5


【解决方案1】:

不要使用dd() 打印$data 变量,

使用print_rvar_dump 查看 curl 返回的确切响应。

dd 在输出中添加了额外的 JS

这是一个更好的代码:

$url="https://twitter.com";

$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL,$url);
$result=curl_exec($ch);
print_r($result);

【讨论】:

  • 您好,感谢您的回答。我刚刚尝试了print_r,但它不打印网页的html内容
  • 嗨,我已经编辑了答案以添加用户代理和其他 curl 选项,请检查。
【解决方案2】:

嗯,谢谢你的帮助,现在可以了!

第一次尝试没有,但后来我删除了这两行: curl_setopt($ch, CURLOPT_USERAGENT, $agent);$agent= 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)'; 知道一切都很好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-04-24
    • 2015-05-29
    • 2016-12-21
    • 1970-01-01
    • 1970-01-01
    • 2014-12-15
    • 2015-09-14
    • 2015-06-03
    相关资源
    最近更新 更多