跟我学Laravel之请求与输入

基本输入

Laravel使用一种简单的方式来访问用户提交的信息。 你可以用统一的方式来访问用户提交的信息,而不用为用户提交信息的方式操心。

获取一个用户提交的值

代码如下:

为用户提交信息指定一个的默认返回值(如果用户未提交)

代码如下:

判断指定的提交信息是否存在

代码如下:

获取所有用户提交的信息

代码如下:

获取指定的信息,或者获取排除指定几个提交项之外的所有提交信息

代码如下:

$input = Input::except('credit_card');

如果提交的表单含有 "数组" 形式的输入,可以使用点符号访问数组:

代码如下:

注意: 有一些javascript库,比如 Backbone 会以json格式提交信息。 通过 Input::get 来获取信息,使用上无差别。

Cookies

Laravel会加密所有已创建的cookie信息,并附加上授权码,当客户端擅自修改cookie信息时,该cookie将被废弃,从而保证安全性。

获取一个指定的cookie值

代码如下:

添加一个新的cookie键值对

代码如下:

$response->withCookie(Cookie::make('name','value',$minutes));

加入下一个Response的Cookie队列之中

如果想在Response创建之前设置cookie,可以使用 Cookie::queue() 方法。cookie将通过应用框架自动添加到最终的Response之中。

代码如下:

创建一个永不过期的cookie键值对

代码如下:

用户提交信息持久化

有时可能需要在用户的多个请求之间持久化用户提交的信息。 比如,当用户提交的信息验证失败重新返回提交信息页面时还原用户的输入。

将用户提交的信息存入Session

代码如下:

把指定的用户提交的信息存入Session

代码如下:

Input::flashExcept('password');

如果你需要关联持久用户提交的信息的操作和重定向操作,可以使用如下的链式调用的方法:

代码如下:
withInput();

return Redirect::to('form')->withInput(Input::except('password'));

注意: 如果你想持久化其它的信息,请参考 Session 类. 获取已持久化的用户提交的信息

代码如下:

文件上传

获取用户上传的文件

代码如下:

判断指定文件是否已经被上传

代码如下:

file 方法返回了一个 Symfony\Component\HttpFoundation\File\UploadedFile 类的实例,该类继承自PHP的 SplFileInfo 类,并提供了大量操作该用户上传的文件的方法。

移动一个已上传的文件

代码如下:
move($destinationPath);

Input::file('photo')->move($destinationPath,$fileName);

获取一个已上传的文件在服务器的真实路径

代码如下:
getRealPath();

获取一个已上传的文件的大小

代码如下:
getSize();

获取一个已上传的文件的 MIME 类型

代码如下:
getMimeType();

用户请求的详细信息

Request 类提供了许多 方法 用于获取关于请求的详细信息,该类继承自 Symfony\Component\HttpFoundation\Request 类。 下面提供了几个具有代表性的方法:

获取请求URI

$uri = Request::path(); 判断请求路径是否符合指定模式

代码如下:

获取请求URL

$url = Request::url(); 获取请求URI信息

$segment = Request::segment(1); 获取请求头里的Content-Type信息

$value = Request::header('Content-Type'); 获取 $_SERVER 数组里指定的值

$value = Request::server('PATH_INFO'); 判断是否是使用ajax请求

代码如下:

判断请求是否使用https连接

代码如下:

检测请求的响应格式

Request::format 方法基于 HTTP 请求头的 Accept 信息返回客户端希望获取的响应格式:

代码如下:

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


laravel的dd函数不生效怎么办
看不懂laravel文档咋办
安装laravel框架出现command怎么办
Laravel开发API怎么使用事务
laravel怎么构建复杂查询条件
laravel如何实现防止被下载
为什么laravel比yii火
一些常见的Laravel定时任务不运行的问题
laravel用路由有什么好处
composer无法安装laravel怎么办
laravel现在还用吗
laravel怎么替换主键id
laravel的appurl有什么用
如何修改Laravel的报错输出形式
laravel怎么避免foreach查表
laravel怎样操作数据库
laravel怎么截取字符串
laravel 是国内的吗
laravel怎么设置请求头
浅析Laravel社区Redis组件报错的问题和解决方法