Mrcdh技术博客 Mrcdh技术博客
首页
  • Html5
  • Javascript
  • Nodejs
  • electron
  • Android
  • 微信公众号
  • 框架
  • 其他
  • Mysql
  • PHP
  • Python
  • java
  • Gulp
  • 其它
  • 网站
  • 资源
  • Vue资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Mrcdh

立志于全桟开发
首页
  • Html5
  • Javascript
  • Nodejs
  • electron
  • Android
  • 微信公众号
  • 框架
  • 其他
  • Mysql
  • PHP
  • Python
  • java
  • Gulp
  • 其它
  • 网站
  • 资源
  • Vue资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Mysql

  • PHP

    • PHP curl常见CURLE_SSL_CACERT (60)错误及get,post实例
    • PHP常用注解
    • PhpSpreadsheet操作Excel的基本使用
    • composer常用命令
    • php程序性能优化的一些方法
    • php常用内置函数
    • PHP常用框架伪静态
    • php遍历时发现最后一个元素的值随着遍历变化
    • tp5和laravel常用操作的区别
    • PHP常用扩展
    • PHP常用自定义方法
    • PHP框架
    • php枚举库php-enum的使用
    • php快速接入微信支付宝支付easy-pay
  • Python

  • java

  • Go

  • ElasticSearch

  • Git

  • Gulp

  • 钉钉开发

  • Microsoft

  • 其它

  • 技术
  • PHP
mrcdh
2020-10-23

PHP curl常见CURLESSLCACERT (60)错误及get,post实例

常见的 CURLE_SSL_CACERT (60) 错误, 解决办法:

从 https://curl.haxx.se/ca/cacert.pem (opens new window) 下载最新的

可直接下载2022 年 3 月 22 日

配置 php.ini 文件,搜索 [curl] ,在下方添加

curl.cainfo = "D:\phpStudy\php\php-7.0.12-nts\ext\cacert.pem"
1

curl post请求

/**curl中的post请求
  * @param $url  请求地址
  * @param $post 请求参数
  */
function curl_post($url,$post){
  $curl = curl_init();//初始化
  // 设置抓取的url
  curl_setopt($curl, CURLOPT_URL, $url);
  // 设置头文件的信息作为数据流输出
  curl_setopt($curl, CURLOPT_HEADER, false);
  // 设置获取的信息以文件流的形式返回,而不是直接输出。
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, false);
  // 设置post方式提交
  curl_setopt($curl, CURLOPT_POST, true);
  // POST请求参数
  curl_setopt($curl, CURLOPT_POSTFIELDS, $post);
  // https请求 不验证证书和hosts
  curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
  curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
  // 添加头部信息
  curl_setopt($curl, CURLOPT_HTTPHEADER, [
    "Content-Type: application/json",
    "Accept: application/json",
  ]);
  // 执行命令
  $data = curl_exec($curl);
  if (curl_errno($curl)) {
    return curl_error($curl);
  }
  curl_close($curl); //关闭URL请求
  return $data;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32

curl get请求

/**
  * @param $url  请求地址
  * @return mixed|string
  */
function curl_get($url)
{
  // 初始化
  $curl = curl_init();
  // 设置请求的url
  curl_setopt($curl, CURLOPT_URL, $url);
  // 设置头文件的信息作为数据流输出
  curl_setopt($curl, CURLOPT_HEADER, false);
  // 设置获取的信息以文件流的形式返回,而不是直接输出。
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
  // 执行命令
  $data = curl_exec($curl);
  if (curl_errno($curl)) {
    return curl_error($curl);
  }
  curl_close($curl); //关闭URL请求
  return $data;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

有时候使用json_encode传递json数据,参数内容中包含中文,返回值不对的情况传递第二个参数

json_encode($post, JSON_UNESCAPED_UNICODE);  // 中文不转为unicode ,对应的数字 256
1

json_encode 另一个常用参数

json_encode($post, JSON_UNESCAPED_SLASHES);  // 不转义反斜杠,对应的数字 64
1

json_encode只能传递一个常量,如果同时使用两个则: 256 + 64 = 320

json_encode($post, 320);  // 中文不转为unicode,不转义反斜杠
1
#php#curl
上次更新: 2022/03/23, 17:03:00
Mysql常用语句
PHP常用注解

← Mysql常用语句 PHP常用注解→

最近更新
01
python之Anaconda(conda)版本管理
03-24
02
electron文件缓存
02-16
03
vuex数据持久化插件vuex-persist
02-14
更多文章>
Theme by Vdoing | Copyright © 2020-2023 Mrcdh | 苏ICP备2020058908号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×