基于PHP的cURL快速入门
原文:基于
PHP的cURL快速入门
英文原文:http://net.tutsplus.com/tutorial ... for-mastering-curl/
原文作者:Burak
Guzel
cURL
是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP、FTP、TELNET等。最爽的是,PHP也支持 cURL
库。本文将介绍 cURL 的一些高级特性,以及在PHP中如何运用它。
为什么要用 cURL?
是的,我们可以通过其他办法获取网页内容。大多数时候,我因为想偷懒,都直接用简单的PHP函数:
$content = file_get_contents("http://www.nettuts.com");
// or
$lines = file("http://www.nettuts.com");
// or
readfile(http://www.nettuts.com);
不过,这种做法缺乏灵活性和有效的错误处理。而且,你也不能用它完成一些高难度任务——比如处理coockies、验证、表单提交、文件上传等等。
基本结构
在学习更为复杂的功能之前,先来看一下在PHP中建立cURL请求的基本步骤:
初始化
设置变量
执行并获取结果
释放cURL句柄
// 1. 初始化
$ch = curl_init();
// 2. 设置选项,包括URL
curl_setopt($ch, CURLOPT_URL, "http://www.nettuts.com");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
// 3. 执行并获取HTML文档内容
$output = curl_exec($ch);
// 4. 释放curl句柄
curl_close($ch);
第二步(也就是 curl_setopt()
)最为重要,一切玄妙均在此。有一长串cURL参数可供设置,它们能指定URL请求的各个细节。要一次性全部看完并理解可能比较困难,所以今天我们只试一
下那些更常用也更有用的选项。
检查错误
你可以加一段检查错误的语句(虽然这并不是必需的):
// ...
$output = curl_exec($ch);
if ($output === FALSE) {
echo "cURL Error: " . curl_error($ch);
}
// ...
请注意,比较的时候我们用的是“=== FALSE”,而非“== FALSE”。因为我们得区分 空输出 和 布尔值FALSE,后者才是真正的错误。
获取信息
这是另一个可选的设置项,能够在cURL执行后获取这一请求的有关信息:
// ...
curl_exec($ch);
$info = curl_getinfo($ch);
echo '获取'. $info['url'] . '耗时'. $info['total_time'] . '秒';
// ...
返回的数组中包括了以下信息:
“url” //资源网络地址
“content_type” //内容编码
&ldquo
相关文档:
发信人: feuvan ( }><(([@> ~ ), 信区: PHP
标 题: [入门]用 PHP 读取文件的正确方法
发信站: 水木社区 (Wed Mar 7 17:51:58 2007), 站内
http://www.ibm.com/developerworks/cn/opensource/os-php-re ......
PHP XML操作类DOMDocument属性及方法
注意大小写一定不能弄错.
属性:
Attributes 存储节点的属性列表(只读)
childNodes 存储节点的子节点列表(只读)
dataType 返回此节点的数据类型
Definition 以DTD或XML模式给出的节点的定义(只读)
Doctype 指定文档类型节点(只读)
documentElement 返回文档的根元素(可读写)
fi ......
现存问题:
1.无法加载 mcrypt 扩展,请检查您的 PHP 配置。
按照网上说的该做的貌似都做了 但是第一次打开phpmyadmin主页时 还是有这个提示 奇怪的是进去之后 里面没有这个提示 然后退出外面也没了
2.配置文件现在需要一个短语密码。
网上找了 但是问题还是没解决 ......
/*** Function: PHP header() examples (PHP)
**
Desc: Some examples on how to use the header() function of PHPYou find
a detailed tutorial at expertsrt.com (English) or at ffm.junetz.de
(German).These is also a good help about caching at web-caching.com.
**
Example: see below.
<br/& ......