curl_init()简单使用

自由无风 自由无风     2022-10-03     779

关键词:

<?php

function _request($curl,$https=true,$method=‘get‘,$data=null)
{
$ch=curl_init(); //初始化
curl_setopt($ch,CURLOPT_URL,$curl);
curl_setopt($ch,CURLOPT_HEADER,false);//设置不需要头信息
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);//获取页面内容,但不输出
if($https)
{
    curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE);//不做服务器认证
    curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,FALSE);//不做客户端认证
}

if($method==‘post‘)
{
    curl_setopt($ch, CURLOPT_POST,true);//设置请求是post方式
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);//设置post请求数据
    
}

$str=curl_exec($ch);//执行访问
curl_close($ch);//关闭curl,释放资源
return $str;    
}

echo _request("http://www.baidu.com");



?>
// 1. 初始化
 $ch = curl_init();
 // 2. 设置选项,包括URL
 curl_setopt($ch,CURLOPT_URL,"http://www.devdo.net");
 curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
 curl_setopt($ch,CURLOPT_HEADER,0);
 // 3. 执行并获取HTML文档内容
 $output = curl_exec($ch);
 if($output === FALSE ){
 echo "CURL Error:".curl_error($ch);
 }
 // 4. 释放curl句柄
 curl_close($ch);

获取CURL请求的输出信息

在curl_exec()函数执行之后,可以使用curl_getinfo()函数获取CURL请求输出的相关信息,示例代码如下:

curl_exec($ch);
$info = curl_getinfo($sh);
echo ‘ 获取 ‘.$info[‘url‘].‘耗时‘.$info[‘total_time‘].‘秒‘;

 

上述代码中curl_getinfo返回的是一个关联数组,包含以下数据:

  • url:网络地址。
  • content_type:内容编码。
  • http_code:HTTP状态码。
  • header_size:header的大小。
  • request_size:请求的大小。
  • filetime:文件创建的时间。
  • ssl_verify_result:SSL验证结果。
  • redirect_count:跳转计数。
  • total_time:总耗时。
  • namelookup_time:DNS查询耗时。
  • connect_time:等待连接耗时。
  • pretransfer_time:传输前准备耗时。
  • size_uplpad:上传数据的大小。
  • size_download:下载数据的大小。
  • speed_download:下载速度。
  • speed_upload:上传速度。
  • download_content_length:下载内容的长度。
  • upload_content_length:上传内容的长度。
  • starttransfer_time:开始传输的时间表。
  • redirect_time:重定向耗时。

curl_getinfo()函数还有一个可选择参数$opt,通过这个参数可以设置一些常量,对应到上术这个字段,如果设置了第二个参数,那么返回的只有指定的信息。例如设置$opt为CURLINFO_TOTAL_TIME,则curl_getinfo()函数只返回total_time,即总传输消耗的时间,在只需要关注某些传输信息时,设置$opt参数很有意义。

调用未定义的函数 curl_init() - 使用 WAMP

】调用未定义的函数curl_init()-使用WAMP【英文标题】:Calltoundefinedfunctioncurl_init()-withWAMP【发布时间】:2012-08-1802:01:17【问题描述】:我正在尝试让cUrl工作,但我很难过。我在php.ini文件中取消注释extension=php_curl.dll并检查php_curl.dll... 查看详情

对未定义函数 curl_init() 的卷曲调用

】对未定义函数curl_init()的卷曲调用【英文标题】:CurlCalltoundefinedfunctioncurl_init()【发布时间】:2018-11-1711:24:57【问题描述】:我正在使用Windows10,我在我的php脚本中使用cURL来获取一些资源:<?php//GetcURLresource$curl=curl_init();//Sets... 查看详情

调用未定义函数 curl_init() 错误

】调用未定义函数curl_init()错误【英文标题】:Calltoundefinedfunctioncurl_init()error【发布时间】:2015-07-0212:51:58【问题描述】:我使用的是Win64位操作系统,php5.6.8,使用EclipsePDT开发PHP。我遇到了这个Calltoundefinedfunctioncurl_init()错误。... 查看详情

在 wamp 2.2 中调用未定义函数 curl_init() 错误

】在wamp2.2中调用未定义函数curl_init()错误【英文标题】:Calltoundefinedfunctioncurl_init()errorinwamp2.2【发布时间】:2012-09-0500:43:45【问题描述】:当我尝试在Windows7中使用wamp服务器实现google和facebook身份验证时出现以下错误。致命错误... 查看详情

在 wamp 2.2 中调用未定义函数 curl_init() 错误

】在wamp2.2中调用未定义函数curl_init()错误【英文标题】:Calltoundefinedfunctioncurl_init()errorinwamp2.2【发布时间】:2012-09-0500:43:45【问题描述】:当我尝试在Windows7中使用wamp服务器实现google和facebook身份验证时出现以下错误。致命错误... 查看详情

2019-09-16curl简单操作

1.get请求(使用file_get_contents()函数也可以实现get请求)//http_build_query()构造一个url字符串functionhttp_get($url){//1.初始化curl$ch=curl_init();//2.设置参数curl_setopt($ch,CURLOPT_URL,$url);//指定网址curl_setopt($ch,CURLOPT_RETURN 查看详情

curl_init接口

<?php//+----------------------------------------------------------------------//|ThinkPHP[WECANDOITJUSTTHINK]//+----------------------------------------------------------------------//|Copyright(c) 查看详情

curl_init

publicfunctionrequest($curl,$https=true,$method=‘‘,$data=null)$ch=curl_init();curl_setopt($ch,CURLOPT_URL,$curl);//设置URLcurl_setopt($ch,CURLOPT_HEADER,false);//设置头信息//curl_setopt($ch,CURLOPT_RETURNTR 查看详情

curl_init() 出于安全原因已被禁用

】curl_init()出于安全原因已被禁用【英文标题】:curl_init()hasbeendisabledforsecurityreasons【发布时间】:2014-03-3107:30:03【问题描述】:$url="http://api.***.com/1.1/search?tagged=php";$ch=curl_init();curl_setopt($ch,CURLOPT_URL,$url);curl_setopt($ch,C 查看详情

curl_init() 错误未捕获的错误:调用未定义的函数

】curl_init()错误未捕获的错误:调用未定义的函数【英文标题】:curl_init()errorUncaughtError:Calltoundefinedfunction【发布时间】:2018-09-2203:06:45【问题描述】:为什么我总是得到未捕获的错误:调用未定义的函数curl_init()。我在php.ini中... 查看详情

线上用curl_init()函数会提示500错误

我的一个服务器用curl_init();这个函数提示500-内部服务器错误。但测试环境是正常的但我在另外一个服务器上用这个函数是正常的。请问怎么解决参考技术Aphpinfo一下,看看curl模块是否安装和启用<?phpphpinfo();?>本回答被提问者... 查看详情

cURL 发布请求脚本给出“未定义的函数 curl_init”

】cURL发布请求脚本给出“未定义的函数curl_init”【英文标题】:cURLpostrequestscriptgiving"undefinedfunctioncurl_init"【发布时间】:2013-12-0715:21:33【问题描述】:致命错误:在第9行调用C:\\xampp\\htdocs\\lol.php中未定义的函数curl_init()... 查看详情

PHP 致命错误:调用未定义的函数 curl_init()

】PHP致命错误:调用未定义的函数curl_init()【英文标题】:PHPFatalerror:Calltoundefinedfunctioncurl_init()【发布时间】:2011-05-2712:37:16【问题描述】:我尝试PHPPostRequestinsideaPOSTRequest认为它可能对我有用。我的代码如下:$sub_req_url="http://lo... 查看详情

安装php程序,提示环境不支持的函数curl_init

环境不支持的函数curl_init您必须解决以上问题,安装才可以继续这是安装程序时,显示的完整提示。另外,我在网上也搜到答案。1.先打开php.ini文件然后找到extension=php_curl.dll这句话然后把前面的;去掉,再重启apache服务即可windo... 查看详情

PHP curl_setopt() 无效字符 (\0) 在 curl_init() 上失败;

】PHPcurl_setopt()无效字符(\\\\0)在curl_init()上失败;【英文标题】:PHPcurl_setopt()invalidcharacters(\\0)failingoncurl_init();PHPcurl_setopt()无效字符(\\0)在curl_init()上失败;【发布时间】:2016-10-1521:14:03【问题描述】:我最近将我的测试服务器从w... 查看详情

php + curl 问题资源 id #2 on curl_init

】php+curl问题资源id#2oncurl_init【英文标题】:php+curlissueResourceid#2oncurl_init【发布时间】:2016-09-3008:28:20【问题描述】::$url="https://example.com:4433/deviceservice/authorize?login=query";//网址JSON$ch=curl_init($url);回声$ch;//写入资源id#2如果($ 查看详情

curl_init()方法总是用不了

curl_init()方法总是用不了,分号我也去了,php目录下的ext目录里的php_curl.dll,和php目录下的libeay32.dll,php5ts.dll,ssleay32.dll都copy到c:\windows\system32下了,apache也重启了,可是还不能用参考技术A先输出phpinfo()看下,curl模块有没... 查看详情

调用未定义的函数 curl_init() 即使它在 php7 中启用

】调用未定义的函数curl_init()即使它在php7中启用【英文标题】:Calltoundefinedfunctioncurl_init()evenitisenabledinphp7【发布时间】:2016-04-2221:47:27【问题描述】:我刚刚在我的Ubuntu上安装了php7。起初,没有问题,我的网站正在运行。但是... 查看详情