Thinkphp3.2.3框架下封装公共的函数,例如封装CURL函数来获取接口数据

Thinkphp3.2.3框架下封装公共的函数,例如封装CURL函数来获取接口数据

 当我们需要在控制层调用相同的封装函数时,写多次相同的函数,显得代码十分的拉杂,不精简;

TP框架有一个很好的机制,可以再Common定义一个function.php函数,当我们在控制层调用的时候直接调用就可以使用,方便快捷;

具体实现方便如下:

我们可以再三个地方设置公共的函数function.php

(注意:function.php默认是不存在的,需手动创建)

  1. 根目录\Application\Common\Common\function.php(公共的函数,Home和Admin都可以调用)
  2. 根目录\Application\Home\Common\function.php(Home层公共的函数,只可以Home层调用)
  3. 根目录\Application\Admin\Common\function.php(Admin层公共的函数,只可以Admin层调用)

具体讲function存放在哪里自己可以自由的选择

 

另外当我们不想使用function命名的function.php函数时,也是可以的,但是就是需要自己手动设置下

方法如下:

在根目录/Application/Common/Conf/config.php中添加配置:

"LOAD_EXT_FILE"         =>'vaildata',//自动加载公共目录Common下的扩展函数库 

此时就可以自动加载vaildate.php 文件了。
如果有多个需要自动加载的文件,在配置项的值中以","进行分隔即可,例如:

"LOAD_EXT_FILE"         =>'vaildata,upload,download',//自动加载公共目录Common下的扩展函数库 

 

举例:封装CURL函数来获取接口数据

第一步:在根目录\Application\Home\Common\创建function.php函数;

 

复制代码
<?php
    //封装公共的CURL函数
    function curl($url){
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);  
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
        $data = curl_exec($curl);  
        curl_close($curl);
        return $data;
    }
    
?>
复制代码

 

第二步:在需要调用的Controller层调用CURL函数;

复制代码
<?php
namespace Home\Controller;
use Think\Controller;
class WxJsAPIController extends Controller {
    public function index(){
        
        //获取接口数据
        $url = '此处填写接口地址';
        $data_son = curl($url);//调取function.php封装的CURL函数
        $data = json_decode($data_json,true)['access_token'];
        var_dump($data);//JSON数据转换成数组形式

         //如果还需要调用CURL函数,同上直接curl("接口地址")即可;
   
    }
}
?>
复制代码

以上就是Thinkphp3.2.3框架下封装公共的函数和封装CURL函数来获取接口数据的例子;

 

转载出处:http://www.cnblogs.com/wenzheshen/
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值