php教程

thinkphp请求调用API接口函数分享

我的站长站 2023-12-26 人阅读

thinkphp发起请求函数代码

放公共方法中,若不用框架,可与调用方法同层放置

/**
 * 发送HTTP请求方法
 * @param  string $url    请求URL
 * @param  array  $params 请求参数
 * @param  string $method 请求方法GET/POST
 * @return array  $data   响应数据
 */
function http($url, $params, $method = 'GET', $header = array(), $multi = false){
    $opts = array(
        CURLOPT_TIMEOUT        => 30,
        CURLOPT_RETURNTRANSFER => 1,
        CURLOPT_SSL_VERIFYPEER => false,
        CURLOPT_SSL_VERIFYHOST => false,
        CURLOPT_HTTPHEADER     => $header
    );
    /* 根据请求类型设置特定参数 */
    switch(strtoupper($method)){
        case 'GET':
            $opts[CURLOPT_URL] = $url . '?' . http_build_query($params);
            break;
        case 'POST':
            //判断是否传输文件
            $params = $multi ? $params : http_build_query($params);
            $opts[CURLOPT_URL] = $url;
            $opts[CURLOPT_POST] = 1;
            $opts[CURLOPT_POSTFIELDS] = $params;
            break;
        default:
            throw new Exception('不支持的请求方式!');
    }
    /* 初始化并执行curl请求 */
    $ch = curl_init();
    curl_setopt_array($ch, $opts);
    $data  = curl_exec($ch);
    $error = curl_error($ch);
    curl_close($ch);
    if($error) throw new Exception('请求发生错误:' . $error);
    return  $data;
}

调用Api代码方法

public function test()
    {
        $url = 'https://api.topthink.com/weather/query';
        $param = [
            'appCode'=>'填之前(二)里面自己的Appcode',
            'city'=>'重庆'
        ];
        $header = array("Content-Type: application/x-www-form-urlencoded; charset=UTF-8");
        //must have it ↑
        $res = http($url,$param,'GET',$header);
        $res = json_decode($res,true);
        if($res['code']!=0)
            return \json('接口调用出错啦');
        var_dump($res);
    }
相关推荐
  • Thinkphp教程
  • API接口
  • api教程
  • thinkphp5判断语法示例代码

    一、比较标签如:{比较标签 name="变量" value="值"}内容{/比较标签}{eq name="name" value="value"}相等{else/}不相等{/eq}二、判断标签1、SWITCH标签{switch name="变量" }{case value="值1|值3" break="0或1"}输出内容1{/case}{case value=&quo...

    php教程 74 2年前
  • 后盾网Thinkphp3.1.3个人博客实例视频教程
    后盾网Thinkphp3.1.3个人博客实例视频教程

    后盾网出品45课时Thinkphp3.1.3版本个人博客实例视频教程,视频文件+实战代码,9G大小。Thinkphp视频教程截图

    视频教程 46 3年前
  • ThinkPHP发布V6.0.7版路由修正性能提升

    ThinkPHP发布V6.0.7版,本版本主要针对上个版本做了一些路由修正,还意外收获了一些性能提升,是一个建议更新的版本。主要更新修正Validate类的PHP8兼容性改进redis驱动的append方法修正路由匹配检测问题优化路由变量正则规则生成改进responseView的内容...

    php教程 102 3年前
  • 支付宝企业账户转账个人账户php接口代码

    前言支付宝企业账户转账个人账户php接口代码,该接口主要用于平台对用户奖励的发放,场景也很简单就是我在你平台上有余额,我提现,平台给钱。只不过项目中是用的官方的SDK调用的,仔细看了下那个SDK目录,把很多无用的接口(目前自己用不上)也包含在里面,作为强...

    php教程 178 2年前
  • QQ互联API申请教程(图文)

    1、登录QQ互联在浏览器上打开网址:http://connect.qq.com/。点击右上角【登录】按钮,使用QQ账号登录。2、管理中心点击【管理中心】进入应用管理页面。(图中位置1)完善开发者资料,如果手册登录需要完善开发者资料。点击【创建应用】,开始创建应用。(图中位...

    经验分享 1215 5年前
  • 苹果CMS开放API相关服务接口

    开放式API数据接口-声明本接口仅供学习研究使用,请勿用于生产环境和非法渠道;不能保证稳定性和正确性;请牢记苹果cms官方域名: www.maccms.com(暂时关闭) www.maccms.net; 网路出现多个盗版苹果v10的程序,改头换面加入后门,请误下载使用没有诚信的盗版程序...

    苹果cms教程 994 5年前
  • QQ互联API申请教程(图文)

    1、登录QQ互联在浏览器上打开网址:http://connect.qq.com/。点击右上角【登录】按钮,使用QQ账号登录。2、管理中心点击【管理中心】进入应用管理页面。(图中位置1)完善开发者资料,如果手册登录需要完善开发者资料。点击【创建应用】,开始创建应用。(图中位...

    经验分享 1215 5年前
  • 苹果CMS开放API相关服务接口

    开放式API数据接口-声明本接口仅供学习研究使用,请勿用于生产环境和非法渠道;不能保证稳定性和正确性;请牢记苹果cms官方域名: www.maccms.com(暂时关闭) www.maccms.net; 网路出现多个盗版苹果v10的程序,改头换面加入后门,请误下载使用没有诚信的盗版程序...

    苹果cms教程 994 5年前
  • php站长站备案查询API代码

    <?phperror_reporting(0);$u = $_GET[&#39;url&#39;];var_dump();if(!isset($u)){ echo &#39;?url=qq.com&#39;; die;}$a = file_get_contents(&#39;http://icp.chinaz.com/info?q=&#39;.$u);$p = &#39;/<td align=\"left\&qu...

    php教程 142 4年前
最新更新