一. Request对象获取方法
1. request() 助手函数获取
2. think\Request 类获取
3.利用框架注入Request对象 Request方法时单利方法 在think框架app类中会被实例化
<?php namespace app\index\controller; use think\Request; class Index { /** * @param Request $request * @return string|void */ public function index(Request $request) { #$request = request(); #$request = Request::instance(); return dump($request); } }
二. Request 对象的使用方法
<?php namespace app\index\controller; use http\Params; use think\Request; class Index { /** * @param Request $request * @return string|void * @url http://localhost/news/5.html?name=jiang */ public function index(Request $request) { /* 获取域名 */ dump($domain = $request->domain()); # 返回域名 $domain = http://localhost dump($pathinfo= $request->pathinfo()); # 返回域名和?之间的值 $pathinfo = news/5.html dump($path = $request->path()); # $path = news/5 /* 请求类型 */ dump($method = $request->method()); # 返回请求方法 $method = GET; dump($request->isGet()); #判断是请求的方法类型 是判断的类型返回true 不是返回false dump($request->isAjax()); # /* 请求参数 */ dump($id = $request->get("id")); #get接收的值不包括 pathinfo 部分 这里返回 null dump($id = $request->param('id')); # $id = 5 dump($name = $request->param('name')); # $name = jiang #session("name",'jiangfeilong'); #设置session dump($session = $request->session()); #获取sssion对象 没设置session的化返回空数组 dump($session_name = $request->session("name")); #返回session 的name的值 dump($cookie = $request->cookie()); #获取cookie对象 返回cookie数组 dump($phpSessId = $request->cookie('PHPSESSID')); #返回cookie的sessionId的值 /* 利用助手函数获取url参数 */ dump($id = input('id')); /* 获取模块 控制器 操作 */ dump($module = $request->module()); #获取当前模块 这里时index dump($controller = $request->controller()); #返回当前控制器 这里是 Index类 dump($action = $request->action()); #返回当前操作 这里返回的是index模块的Index类的index()方法 /* 获取 url */ dump($url = $request->url()); #返回 / 之后的 url 这里是 /news/5.html?name=jiang dump($baseUrl = $request->baseUrl()); # 返回 /和?号之间url的部分 这里是 /news/5.html } }