curl_exec返回false(curl_exec)
大家好,我是小曜,我来为大家解答以上问题。curl_exec返回false,curl_exec很多人还不知道,现在让我们一起来看看吧!
1、curl_exec
2、(PHP 4 >= 4.0.2, PHP 5) curl_exec — 执行一个cURL会话
3、可以参考官方网站范例:http://www.php.net/manual/en/function.curl-exec.php
4、你要用CURL,就跟Session一样,要先初始化 curl_init(),不然PHP部会知道该怎麼运作。初始化完成之後就要开始设定参数,就像是要不要显示出来。当你参数设定完毕,就要开始执行这个CURL。最後就要关闭这个CURL。这就算是一个简单的CURL运用,当然还有更多变化。
5、实际例子:
6、<?php
7、// 创建一个cURL资源
8、$ch = curl_init();
9、// 设置URL和相应的选项
10、curl_setopt($ch, CURLOPT_URL, "
11、);
12、curl_setopt($ch, CURLOPT_HEADER, 0);
13、// 抓取URL并把它传递给浏览器
14、curl_exec($ch);
15、// 关闭cURL资源,并且释放系统资源
16、curl_close($ch);
17、?>如使用mysql一样,首先,我们必须先建立一个「curl」的连线,也因此,必须使用到 curl_init() 这个函式。而为了怕建立连线忘了关闭。因此,必须先写好关闭的函式,curl_close($ch)。
18、不过大部分HTML标签都可以抓下来,并且显示,可是有部分可能与资料加密性或是转址的部分,就无法正常显示。
19、/ 建立CURL连线
20、$ch = curl_init();
21、// 设定撷取的URL网址
22、curl_setopt($ch, CURLOPT_URL, "
23、);
24、curl_setopt($ch, CURLOPT_HEADER, false);
25、//将curl_exec()获取的讯息以文件流的形式返回,而不是直接输出。
26、curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
27、// 执行
28、$temp=curl_exec($ch);
29、// 关闭CURL连线
30、curl_close($ch)加上curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);之後,他会将curl_exec()获取的讯息以文件流的形式返回传给$temp,而不是直接输出。如果要显示出画面的话就加上 echo $temp;就可以了。
31、下面先分享一个比较常用的,传递参数的部分。
32、简易的使用语法(GET):
33、// 建立CURL连线
34、$ch = curl_init();
35、// 设定撷取的URL网址
36、curl_setopt($ch, CURLOPT_URL, "
37、);
38、curl_setopt($ch, CURLOPT_HEADER, false);
39、//将curl_exec()获取的讯息以文件流的形式返回,而不是直接输出。
40、curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
41、// 执行
42、$temp=curl_exec($ch);
43、// 关闭CURL连线
44、curl_close($ch)Get参数可以直接在网址传递例如网址後面加的?SomeVar=test,但是一旦资料量很大,用POST送还是比较适合。
45、简易的使用语法(POST):
46、// 建立CURL连线
47、$ch = curl_init();
48、// 设定撷取的URL网址
49、curl_setopt($ch, CURLOPT_URL, "
50、);
51、curl_setopt($ch, CURLOPT_HEADER, false);
52、//将curl_exec()获取的讯息以文件流的形式返回,而不是直接输出。
53、curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
54、//设定要传的 变数A=值A & 变数B=值B (中间要用&符号串接)
55、$PostData = "a=abc&b=def";
56、//设定CURLOPT_POST 为 1或true,表示要用POST方式传递
57、curl_setopt($ch, CURLOPT_POST, 1);
58、//CURLOPT_POSTFIELDS 後面则是要传接的POST资料。
59、curl_setopt($ch, CURLOPT_POSTFIELDS, $PostData);
60、// 执行
61、$temp=curl_exec($ch);
62、// 关闭CURL连线
63、curl_close($ch)以上的传递方式在某些状况下很好用,譬如说,没有设计完整的会员申请系统,就可以利用上面这些程式码,做一个自动注册申请机
本文到此讲解完毕了,希望对大家有帮助。