<?php namespace app\api\controller; use app\common\controller\Api; use Overtrue\Pinyin\Pinyin; use think\Db; /** * 示例接口 */ class Demo extends Api { //如果$noNeedLogin为空表示所有接口都需要登录才能请求 //如果$noNeedRight为空表示所有接口都需要验证权限才能请求 //如果接口已经设置无需登录,那也就无需鉴权了 // // 无需登录的接口,*表示全部 protected $noNeedLogin = ['test', 'test1']; // 无需鉴权的接口,*表示全部 protected $noNeedRight = ['test2']; /** * 测试方法 * * @ApiTitle (测试名称) * @ApiSummary (测试描述信息) * @ApiMethod (POST) * @ApiRoute (/api/demo/test/id/{id}/name/{name}) * @ApiHeaders (name=token, type=string, required=true, description="请求的Token") * @ApiParams (name="id", type="integer", required=true, description="会员ID") * @ApiParams (name="name", type="string", required=true, description="用户名") * @ApiParams (name="data", type="object", sample="{'user_id':'int','user_name':'string','profile':{'email':'string','age':'integer'}}", description="扩展数据") * @ApiReturnParams (name="code", type="integer", required=true, sample="0") * @ApiReturnParams (name="msg", type="string", required=true, sample="返回成功") * @ApiReturnParams (name="data", type="object", sample="{'user_id':'int','user_name':'string','profile':{'email':'string','age':'integer'}}", description="扩展数据返回") * @ApiReturn ({ 'code':'1', 'msg':'返回成功' }) */ private function shouzimu($string) { // 小内存型 $pinyin = new Pinyin(); // 默认 $pinyin_arr = $pinyin->convert($string); $shouzimu = ''; if(!empty($pinyin_arr)){ foreach($pinyin_arr as $key => $val){ $shouzimu .= strtoupper(substr($val,0,1)); } } return $shouzimu; } /** * 无需登录的接口 * */ public function test1() { $list = Db::name('video')->select(); foreach($list as $key => $video){ $shouzimu = $this->shouzimu($video['title']); Db::name('video')->where('id',$video['id'])->update(['search_title'=>$shouzimu]); } } /** * 需要登录的接口 * */ public function test2() { $this->success('返回成功', ['action' => 'test2']); } /** * 需要登录且需要验证有相应组的权限 * */ public function test3() { $this->success('返回成功', ['action' => 'test3']); } }