curl介绍
curl是一个开源的网络链接库,支持http, https, ftp, gopher, telnet, dict, file, and ldap 协议。之前均益介绍了python版本的pycurl
http://junyiseo.com/python/607.html
,现在介绍怎么使用php版本的URL.
curl get请求
function
curl_get
(
$url
)
{
$header
=
array
(
'Accept: application/json'
,
$curl
=
curl_init
(
)
;
//设置抓取的url
curl_setopt
(
$curl
,
CURLOPT_URL
,
$url
)
;
//设置头文件的信息作为数据流输出
curl_setopt
(
$curl
,
CURLOPT_HEADER
,
0
)
;
// 超时设置,以秒为单位
curl_setopt
(
$curl
,
CURLOPT_TIMEOUT
,
1
)
;
// 超时设置,以毫秒为单位
// curl_setopt($curl, CURLOPT_TIMEOUT_MS, 500);
// 设置请求头
curl_setopt
(
$curl
,
CURLOPT_HTTPHEADER
,
$header
)
;
//设置获取的信息以文件流的形式返回,而不是直接输出。
curl_setopt
(
$curl
,
CURLOPT_RETURNTRANSFER
,
1
)
;
curl_setopt
(
$curl
,
CURLOPT_SSL_VERIFYPEER
,
false
)
;
curl_setopt
(
$curl
,
CURLOPT_SSL_VERIFYHOST
,
false
)
;
//执行命令
$data
=
curl_exec
(
$curl
)
;
// 显示错误信息
if
(
curl_error
(
$curl
)
)
{
print
"Error: "
.
curl_error
(
$curl
)
;
}
else
{
// 打印返回的内容
var_dump
(
$data
)
;
curl_close
(
$curl
)
;
curl post请求
// $url 是请求的链接
// $postdata 是传输的数据,数组格式
function curl_post( $url, $postdata ) {
$header = array(
'Accept: application/json',
//初始化
$curl = curl_init();
//设置抓取的url
curl_setopt($curl, CURLOPT_URL, $url);
//设置头文件的信息作为数据流输出
curl_setopt($curl, CURLOPT_HEADER, 0);
//设置获取的信息以文件流的形式返回,而不是直接输出。
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
// 超时设置
curl_setopt($curl, CURLOPT_TIMEOUT, 10);
// 超时设置,以毫秒为单位
// curl_setopt($curl, CURLOPT_TIMEOUT_MS, 500);
// 设置请求头
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE );
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE );
//设置post方式提交
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
//执行命令
$data = curl_exec($curl);
// 显示错误信息
if (curl_error($curl)) {
print "Error: " . curl_error($curl);
} else {
// 打印返回的内容
var_dump($data);
curl_close($curl);
TRUE 禁用 @ 前缀在 CURLOPT_POSTFIELDS 中发送文件。 意味着 @ 可以在字段中安全得使用了。 可使用 CURLFile 作为上传的代替。
PHP 5.5.0 中添加,默认值 FALSE。 PHP 5.6.0 改默认值为 TRUE。. PHP 7 删除了此选项, 必须使用 CURLFile interface 来上传文件。
FALSE 禁止 cURL 验证对等证书(peer's certificate)。要验证的交换证书可以在 CURLOPT_CAINFO 选项中设置,或在 CURLOPT_CAPATH中设置证书目录。
自cURL 7.10开始默认为 TRUE。从 cURL 7.10开始默认绑定安装。
Javascript Error 对象 和 错误处理
ChatGPT 生成 SD 和 Midjourney 的提示词(prompt)的简单方法
ChatGPT 基本使用方法
如何将 node 项目打包成一个独立的 .js 文件?
《代码整洁之道:程序员的职业素养》摘抄
近期评论