代码改变世界

每天laravel[027]-laravel 基础知识 --- 请求

2017-06-03 14:56  吃饱了才能撑着  阅读(115)  评论(0)    收藏  举报
laravel 的请求目录:
 
1 访问请求  
     基础使用:在函数内定义 Request $request 
     升级使用:如果需要传递其它的参数,例如:
     Route:put('user/{id}','UserController@update');
     函数内的参数这样设置 (Request $request, $id)
 
     获取基础的URI
     $uri = $request->path();
     判读url地址是否包含什么字符串
     if($request->is('admin/*'))
     获取基础的URL
     $url = $request->url()
     获取及判读请求方式
     $method = $request->method();
     if($request->isMethod('post'))
 
     PSR-7 请求标准,如果想要体验。需要安装 
     composer require symfony/psr-http-message-bridge
     composer require zendframewor/zend-diactoros
 
     使用 PSR-7 方式
     use Psr\Http\Message\ServerRequestInterface;
     Route::get('/',function(ServerRequestInterface $request){});
 
2 接收数据
 
     获取 
     获取简单的数值 
     $name = $request->input('name');
     获取简单数值 
     $name = $request->name
     获取简单数值并且设置默认值
     $name = $request->input('name','未填写');
     获取表单数组参数,使用 “.”代表下一级函数
     $input = $request->input('products.0.name');
     获取全部数据
     $all = $request->all();
     部分数据接收
     仅仅接收这些数据
     $input = $request->only(['username','password']);
     $input = $request->only('username','password');
     除了这些数据都接收
     $input = $request->except(['credit_card']);
     $input = $request->except('creadit_card');
     
 
     判读
     判读是否有这个数据
     if($request->has('name'))
 
     接收历史数据
     
     刷新当前数据进入历史数据的仓库
     $request->flash();
     部分刷新
     $request->flashOnly('username','email');
     $request->flashExcept('password');
     跳转的同时 刷新数据
     return redirect('form')->withInput();
     return redirect('form')->withInput($request->expect('password'));
 
     接收以前存储的历史数据
     $username = $request->old('name');
     如果在模版中使用,可以直接使用
     {{old('username')}}
 
 
     Cookies 操作
     
     接收Cookies 值的操作
     $value = $request->cookie('name');
 
     附带cookie 的两种相应方式
     1 
     $response = new Illuminate\Http\Response('Hello World');
     $response->withCookie(cookie('name','value',$minutes));
     return $response;
 
     方式2:
     $response->withCookie(cookie()->forever('name','value'));
 
 
     File 操作
 
     获取文件:
     $file = $request->file('photo');
     
     判读是否有文件
     if($request->hasFile('photo'))
 
     验证是否文件上传规则
     if($request->file('photo')->isValid())
 
     移动上传文件
     $request->file('photo')->move($destinationPath);
     $request->file('photo')->move($destinationPath,$filename);
 
 
php初学者---千锋php课堂笔记