# 请求信息
* * * * *
首先能阅读到此处的道友相信对TP5也是比较了解的,若还不了解的话可以先去阅读TP5手册。
在TP5中请求信息都封装在request对象中,OneBase在公共控制器中取出了部分request对象中的数据便于后续使用,当然若使用次数不多的也可以直接用request对象获取。
下面看看取出来了哪些信息
~~~
/**
* 初始化请求信息
*/
final private function initRequestInfo()
{
defined('IS_POST') or define('IS_POST', $this->request->isPost());
defined('IS_GET') or define('IS_GET', $this->request->isGet());
defined('IS_AJAX') or define('IS_AJAX', $this->request->isAjax());
defined('IS_PJAX') or define('IS_PJAX', $this->request->isPjax());
defined('IS_MOBILE') or define('IS_MOBILE', $this->request->isMobile());
defined('MODULE_NAME') or define('MODULE_NAME', strtolower($this->request->module()));
defined('CONTROLLER_NAME') or define('CONTROLLER_NAME', strtolower($this->request->controller()));
defined('ACTION_NAME') or define('ACTION_NAME', strtolower($this->request->action()));
defined('URL') or define('URL', CONTROLLER_NAME . SYS_DS_PROS . ACTION_NAME);
defined('URL_MODULE') or define('URL_MODULE', MODULE_NAME . SYS_DS_PROS . URL);
defined('URL_TRUE') or define('URL_TRUE', $this->request->url(true));
defined('DOMAIN') or define('DOMAIN', $this->request->domain());
$this->param = $this->request->param();
}
~~~
可以看到这个方法中有很多常量,这些常量就是OneBase通过request对象中的信息进行了组织后定义的。
再后续使用中也更方便,比如 IS_POST 这种简直太方便啦。
这些常量就不一个一个介绍了,OB使用者都是有一定水平的喔。
下面的$this->param = $this->request->param(); 就是把表单中提交的数据换了一个载体。
~~~
/**
* SEO添加
*/
public function seoAdd()
{
IS_POST && $this->jump($this->logicSeo->seoEdit($this->param));
return $this->fetch('seo_edit');
}
~~~
比如上面这段代码就使用了 $this->param,因为其他控制器基本上都继承了ControllerBase,所以直接通过 $this->param即可获取表单提交的数据了。
- 序言
- 基础
- 安装环境
- 安装演示
- 规范
- 目录
- 介绍
- 后台介绍
- 后台首页
- 会员管理
- 系统管理
- 系统设置与配置管理
- 菜单管理
- 系统回收站
- 服务管理
- 插件管理
- 文章管理
- 接口管理
- 优化维护
- SEO管理
- 数据库
- 文件清理
- 行为日志
- 执行记录
- 统计分析
- 接口介绍
- 接口文档
- 错误码设计
- Token介绍
- 前台介绍
- 架构
- 架构总览
- 生命周期
- 入口文件
- 模块设计
- 依赖注入
- 控制器架构
- 逻辑架构
- 验证架构
- 服务架构
- 模型架构
- 行为架构
- 插件架构
- 配置
- 配置介绍
- 配置加载
- 配置扩展
- 请求
- 请求信息
- 日志
- 后台行为日志
- 系统执行日志
- 框架日志
- 数据
- 数据库设计
- 数据字典
- 数据库操作
- 事务控制
- 混合操作
- 实战
- 控制器
- 逻辑与验证
- 视图与模型
- 插件研发
- 服务研发
- 接口研发
- 杂项
- 数据导入导出
- 二维码条形码
- 邮件发送
- 云存储服务
- 支付服务
- 短信服务
- 微信分享
- 生成海报
- 聊天室
- PJAX
- Demo
- Widget
- 附录
- 常量参考
- 配置参考
- 函数参考
- 进阶
- Redis
- 自动缓存
- 全自动缓存
- 索引
- 数据签名
- 全自动事务
- 队列