关于PHP的curl开启问题探讨

今天在做一个新浪登录功能,新浪提供的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);
}

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。
自己搭建IP数据库占资源,而且更新不便,何不使用现成的IP查询呢?下面自己写了个获取IP物理地址的PHP代码(有一定的瑕疵,请高手不吝赐教) 复制代码 代码如下: !DOCTYPE html html lang="en" head title/title meta charset="UTF-8" / meta name="author" content="" / meta name="keywords" content="" / meta name="description" content="" / /h
假设有 IP 地址范围 192.168.0.0~192.168.0.255,只允许此 IP 段访问的代码如下: 复制代码 代码如下: ?php $IP = $_SERVER['REMOTE_ADDR']; $from = strcmp($IP,'192.168.0.0'); $to = strcmp($IP,'192.168.0.255'); if (!($from = 0 $to = 0)) echo "Access Denied"; else echo "Homepage"; ? 从流程上讲,这段代码首
本文实例分析了php定义一个参数带有默认值的函数用法。分享给大家供大家参考。具体分析如下: php的函数参数可以指定默认值,指定默认值后,调用时如果不给该参数赋值,则该参数就使用默认值 ?phpfunction capitalize( $str, $each=TRUE ) { $str = strtolower($str); if ($each === TRUE) { $str = ucwords ($str); } else { $str = strtoupper($str); } echo ("$st
1. 函数的任意数目的参数 你可能知道PHP允许你定义一个默认参数的函数。但你可能并不知道PHP还允许你定义一个完全任意的参数的函数 下面是一个示例向你展示了默认参数的函数: 复制代码 代码如下: // 两个默认参数的函数 function foo($arg1 = '', $arg2 = '') { echo "arg1: $arg1\n"; echo "arg2: $arg2\n"; } foo('hello','world'); /* 输出: arg1: hello arg2: world */ fo
Mysql.class.php 下载 复制代码 代码如下: ?php class Mysql { private $db_host; //主机地址 private $db_user; //用户名 private $db_pass; //连接密码 private $db_name; //名称 private $db_charset; //编码 private $conn; public $debug=false;//调试开关,默认关闭 private $query_id; //用于判断sql语句是否执行成功
复制代码 代码如下: ?php $memcached = array( //用memcached 的 多 进程模拟 多台memcached 服务器 cn en 为 内存服务器名 'cn'=array('192.168.254.144',11211), 'en'=array('192.168.254.144',11212) ); $mysql = array( // mysql 的主从 我的环境是 : xp 主 linux 从 mysql 5 php5 'master'=array('192.168.254

php对数组排序的简单实例 - 2015-04-05 15:04:44

复制代码 代码如下: ?php class='pingjiaF' frameborder='0' src='http://www.jb51.net' scrolling='no' 对数组排序 usort() 函数使用用户自定义的函数对数组排序。 */ function cmp($a, $b) //用户自定义回调函数 { if($a==$b) //如果两个参数相等 { return 0; //返回0 } return($a$b)?-1:1; //如果第1个参数大于第2个返回1,否则-1 } $a=array

使用PHP强制下载PDF文件示例 - 2015-04-05 15:04:32

我们有时会遇到这样一种情况,当需要下载一个PDF文件时,如果不经处理会直接在浏览器里打开PDF文件,然后再需要通过另存为才能保存下载文件。本文将通过PHP来实现直接下载PDF文件。 实现原理:我们仅仅只需要修改页面HTTP头,把Content-Type设置为force-download,问题即可解决。 请看代码: 复制代码 代码如下: forceDownload("pdfdemo.pdf"); function forceDownload($filename) { if (false == file_exi
PHP中的CURL函数库(Client URL Library Function) curl_close — 关闭一个curl会话 curl_copy_handle — 拷贝一个curl连接资源的所有内容和参数 curl_errno — 返回一个包含当前会话错误信息的数字编号 curl_error — 返回一个包含当前会话错误信息的字符串 curl_exec — 执行一个curl会话 curl_getinfo — 获取一个curl连接资源句柄的信息 curl_init — 初始化一个curl会话 curl_
但是, 这样做, 就没办法做一些统计, 权限检查, 等等的工作. 于是, 很多时候, 我们采用让PHP来做转发, 为用户提供文件下载. 复制代码 代码如下: ?php $file = "/tmp/dummy.tar.gz"; header("Content-type: application/octet-stream"); header('Content-Disposition: attachment; filename="' . basename($file) . '"'); header("Conten