每天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课堂笔记
浙公网安备 33010602011771号