PHP通过POST远程获取API接口代码
在网站制作和网站开发过程中,有时需要使用POST远程获取API接口的数据。通常我们会使用PHP的方式来访问API接口。但对于大多数建网站小白来说,PHP通过POST远程获取API接口代码不知道如何去写。下面学做网站论坛就来介绍一下相关写法。
PHP通过POST远程获取API接口代码如下:
<?php
//传递的参数
$arrs = array(
'zjbzxbm'=>'C36110',
'xingming'=>'张三',
'zjhm'=>'362323198912015119',
'zxbm'=> '01',
);
$data = json_encode($arrs,JSON_UNESCAPED_UNICODE);//转为 json 格式
$api ='http://接口地址';
$curl = curl_init();//初始化一个cURL会话(curl 就是模拟浏览器请求)
curl_setopt($curl, CURLOPT_URL, $api);//设置一个cURL传输选项。连接接口
//curl_setopt($curl, CURLOPT_HEADER, 1);// 设置header
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)');
curl_setopt($curl, CURLOPT_POST, 1);//启用时会发送一个常规的POST请求
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);//要发送的数据
//忽略证书
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
//CURL发送Content-type为application/json的HTTP/HTTPS请求
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/json', 'Content-Length: ' . strlen($data)));
curl_setopt($curl, CURLOPT_HEADER, 0);//忽略header头信息
//curl_setopt($ch, CURLOPT_TIMEOUT, 60);//设置超时时间
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);// 设置cURL 参数,要求结果保存到字符串中还是输出到屏幕上。
$output = curl_exec($curl);// 运行cURL,请求网页
curl_close($curl);// 关闭URL请求
//$output2 = json_decode($output,true);//返回结果为 json 格式数据
var_dump($output);
?>
以上是通过POST的方式来获取API接口数据的代码,如果想使用GET方式来获取API接口数据,可以参考:PHP程序WordPress如何通过API接口读取JSON数据