ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# Request请求对象 thinkphp6有关于请求对象的说明,具体可以查看 [thinkphp请求对象](https://ihavenolimitations.xyz/manual/thinkphp6_0/1037517) 请求对象获取的参数可以用作全局处理,比如全局的缓存,站点,配置参数等等 在app下的Request.php可以针对请求类进行扩展,niushop 定义了当前请求站点,插件,模块以及url解析参数。 ~~~ <?php namespace app; // 应用请求对象类 class Request extends \think\Request { /** * 站点id * @var int */ protected $site_id = 0; /** * 当前访问插件 * @var string */ protected $addon; /** * 当前访问应用(模块) * @var string */ protected $module; /** * 解析url * @var unknown */ protected $parseUrl; /** * 站点id * @param number $siteid */ public function siteid($siteid = 1) { return 1; } /** * 当前访问插件 * @param string $addon * @return string */ public function addon($addon = '') { if(!empty($addon)) { $GLOBALS["REQUEST_ADDON"] = $addon; } return isset($GLOBALS["REQUEST_ADDON"]) ? $GLOBALS["REQUEST_ADDON"] : ''; } /** * 当前访问模块 * @param string $module */ public function module($module = '') { if(!empty($module)) { $GLOBALS["REQUEST_MODULE"] = $module; } return isset($GLOBALS["REQUEST_MODULE"]) ? $GLOBALS["REQUEST_MODULE"] : ''; } /** * 判断当前是否是微信浏览器 */ public function isWeixin() { if (strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false) { return 1; } return 0; } /** * 当前登录用户id * @return mixed|number */ public function uid($app_module) { $uid = session($app_module."."."uid"); if(!empty($uid)) { return $uid; }else{ return 0; } } /** * 解析url */ public function parseUrl() { $addon = $this->addon() ? $this->addon() . '://' : ''; return $addon.$this->module().'/'.$this->controller().'/'.$this->action(); } } ~~~