• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

如何用php调用外部接口json数据?

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
主要用到了PHP中的 curl模块,分get和post两种方式。

<?php
/**
* Created by PhpStorm.
* User: dayue
* Date: 2017/12/4
* Time: 16:25
*/

namespace App\Services;


class ApiService
{
static function reqUrl($url, $params = false, $ispost = 0)
{
$httpInfo = array();
$ch = curl_init();

curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_USERAGENT, 'Data');
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
if ($ispost) {
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
curl_setopt($ch, CURLOPT_URL, $url);
} else {
if ($params) {
curl_setopt($ch, CURLOPT_URL, $url . '?' . $params);
} else {
curl_setopt($ch, CURLOPT_URL, $url);
}
}
$response = curl_exec($ch);
if ($response === FALSE) {
//echo "cURL Error: " . curl_error($ch);
return false;
}
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
// dd($httpCode);
$httpInfo = array_merge($httpInfo, curl_getinfo($ch));
// dd($httpInfo);
curl_close($ch);
$response = json_decode($response,true);
$result = [];
$result['httpCode'] = $httpCode;
$result['info'] = $response;
return $result;

// $data_string = json_encode($params);
//
// $ch = curl_init($url);
// curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
// curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
// curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// curl_setopt($ch, CURLOPT_HTTPHEADER, array(
// 'Content-Type: application/json',
// 'Content-Length: ' . strlen($data_string))
// );
//
// $result = json_decode(curl_exec($ch), true);
//
// curl_close($ch);
// return $result;
}
}
 
//json接口测试用例
public function ApiTest()
{
$url = 'http://ip.taobao.com/service/getIpInfo.php';
$params = 'ip=101.81.71.12';
$res = ApiService::reqUrl($url, $params);
return $res['info']['data'];
}
JSON API免费接口

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP实现图片水印功能发布时间:2022-07-10
下一篇:
yii隐藏index.php的步骤发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap