ThinkPHP开发api时多级控制器的访问方法

发开api时,经常会用到thinkphp的多级控制器,访问方法如下:

例如:有v1和v2两个版本的接口

v1:版本控制器(类文件位置为:application/api/controller/v1/User.php)代码如下:

<?php

namespace app\api\controller\v1;

use app\api\model\User as UserModel;

class User{

  $user = UserModel::get($id);

  if($user){

    return json($user);

  }else{

    return json(['error'=>'用户不存在'],404);

  }

}

?>

v2:版本控制器(类文件位置为application/api/controller/v2/User.php)代码如下:

<?php

namespace app\api\controller\v2;

use app\api\model\User as UserModel;

class User{

  public function read($id){

    $user = UserModel::get($id,'profile');

      if($user){

        return json($user);

      }else{

        return json(['error'=>'用户不存在'],404);

      }

  }

}

?>

访问地址:

v1:   http://serverName/index.php/api/v1.user/read/id/1

v2:   http://serverName/index.php/api/v2.user/read/id/1  (v2包含了profile的关联数据)

上一篇:MVC 区域内默认控制器不能访问(Multiple types were found that match the controller named ‘Index')


下一篇:asp.net正则表达式学习例子