作者Uname (呆ㄟ)
看板PHP
标题[请益] curl_init浏览器执行失败?
时间Tue Feb 14 11:05:20 2017
请益一下各位先进
我用curl去抓取一个网页的资料
程式码後来换成网路上很多范例都有同样一个困扰
假使我把curl写成一个ex.php
用/usr/sbin/php ex.php的方式 就可以成功得到回传的值
但是透过chrome或是firefox却都在执行过curl_init()之後 网页就终止了?
我埋echo进去看ex.php执行到哪边
<?php
$url =
'
http://report.penghu.gov.tw/OpenFront/report/report_detail.jsp?sysId=C105AQ022';
echo "AA";
$h = curl_init($url);
echo "BB";
curl_setopt($h, CURLOPT_RETURNTRANSFER, true);
$c = curl_exec($h);
$i = curl_getinfo($h);
curl_close($h);
echo nl2br(print_r($i, true));
?>
浏览器直接执行的话 只到印出AA就停止了~
有人可以指点一下吗? 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 60.249.210.54
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/PHP/M.1487041522.A.E06.html
1F:→ MOONRAKER: 有时候command-line和apache的php版本会不一样 安装模 02/14 11:10
2F:→ MOONRAKER: 组也不一样 跑phpinfo()看有没有装curl 02/14 11:10
3F:→ MOONRAKER: 不过你这样没有错误讯息吗 02/14 11:11
4F:→ Uname: 我一开始其实是跑出没有安装curl_init的错误 最後手动安装 02/14 11:12
5F:→ Uname: 一开始有错误讯息 但後来不知道为何 错误讯息没有show了 02/14 11:13
6F:→ Uname: 我以为是我把它解决掉了~谢谢M大 我先往apache版本去看看 02/14 11:14
7F:→ MOONRAKER: 如果你curl_init()的讯息有消失 那就不清楚了… 02/14 14:56
8F:推 chenxiaowoo: curl_init不需要设网址,一般是在curl_setopt()里设 02/15 00:21
9F:→ et69523820: $cinit = curl_init(); 02/15 02:37
10F:→ et69523820: curl_setopt($cinit, CURLOPT_URL, $url); 02/15 02:37
11F:→ et69523820: curl_setopt($cinit, CURLOPT_TIMEOUT, 5); 02/15 02:38
12F:→ et69523820: curl_setopt($cinit, CURLOPT_RETURNTRANSFER, true); 02/15 02:38
13F:→ et69523820: curl_setopt($cinit, CURLOPT_BINARYTRANSFER, true); 02/15 02:38
14F:→ et69523820: curl_setopt($cinit, CURLOPT_FAILONERROR, true); 02/15 02:38
15F:→ et69523820: curl_setopt($cinit, CURLOPT_POST, true); 02/15 02:38
16F:→ et69523820: curl_setopt($cinit, CURLOPT_POSTFIELDS, 02/15 02:39
17F:→ et69523820: http_build_query($postdata)); 02/15 02:39
18F:→ et69523820: curl_exec($cinit); 02/15 02:40
19F:→ et69523820: curl_close($cinit); 02/15 02:40