Posted in PHP onApril 08, 2014
今天在做一个新浪登录功能,新浪提供的PHP SDK里需要用到curl_init()函数,在调试的时候报找不到curl_init()的方法。
经搜索得知需要开启curl的php扩展,那curl又是什么呢?能做什么?
简单介绍,当我们需要抓去某个网站的数据信息时,可以用到file(),file_get_contents()等网页读取函数,因为 过多的小偷程序泛滥,导致一些站点做了域名限制,从而是的这些file()函数效率低下甚至失效。
如果使用curl来优化一下的话就能进行一些表单,cookie,验证等功能的强大,灵活的功效。
开启curl的步骤
1.在localhost站点下输出一下phpinfo,以此来检测php.ini的所在
(因为我在开启CURL的时候,是在php的安装目录配置php.ini,结果一直不生效,后来查了phpinfo才知道php.ini在apache
的配置文件里被我重定向了)
2.打开php.ini文件,搜索php_curl.dll,找到后删除前面的“;”,重启apache
3.如果测试还是找不到curl_init(),就将php目录下的ext目录里的php_curl.dll,和php目录下的libeay32.dll,php5ts.dll,ssleay32.dll
拷贝至c:\windows\system32下,重启apache
验证curl扩展是否开启,可在phpinfo()里查找
也可以使用程序验证
// 1. 初始化 $ch = curl_init(); // 2. 设置选项,包括URL curl_setopt($ch, CURLOPT_URL, "http://www.tupc1028.com"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 0); // 3. 执行并获取HTML文档内容 $output = curl_exec($ch); // 4. 释放curl句柄 curl_close($ch); $output = curl_exec($ch); if ($output === FALSE) { echo "cURL Error: " . curl_error($ch); }
关于PHP的curl开启问题探讨
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@