本文主要讲解了Laravel框架中请求与输入的概念以及示例,非常的简单实用,需要的朋友可以参考下
基本输入
Laravel使用一种简单的方式来访问用户提交的信息。 你可以用统一的方式来访问用户提交的信息,而不用为用户提交信息的方式操心。
获取一个用户提交的值
复制代码 代码如下:
$name = Input::get('name');
为用户提交信息指定一个的默认返回值(如果用户未提交)
复制代码 代码如下:
$name = Input::get('name', 'Sally');
判断指定的提交信息是否存在
复制代码 代码如下:
if (Input::has('name'))
{
//
}
获取所有用户提交的信息
复制代码 代码如下:
$input = Input::all();
获取指定的信息,或者获取排除指定几个提交项之外的所有提交信息
复制代码 代码如下:
$input = Input::only('username', 'password');
$input = Input::except('credit_card');
如果提交的表单含有 "数组" 形式的输入,可以使用点符号访问数组:
复制代码 代码如下:
$input = Input::get('products.0.name');
注意: 有一些javascript库,比如 Backbone 会以json格式提交信息。 通过 Input::get 来获取信息,使用上无差别。
Cookies
Laravel会加密所有已创建的cookie信息,并附加上授权码,当客户端擅自修改cookie信息时,该cookie将被废弃,,从而保证安全性。
获取一个指定的cookie值
复制代码 代码如下:
$value = Cookie::get('name');
添加一个新的cookie键值对
复制代码 代码如下:
$response = Response::make('Hello World');
$response->withCookie(Cookie::make('name', 'value', $minutes));
加入下一个Response的Cookie队列之中
如果想在Response创建之前设置cookie,可以使用 Cookie::queue() 方法。cookie将通过应用框架自动添加到最终的Response之中。
复制代码 代码如下:
Cookie::queue($name, $value, $minutes);
创建一个永不过期的cookie键值对
复制代码 代码如下:
$cookie = Cookie::forever('name', 'value');
用户提交信息持久化
有时可能需要在用户的多个请求之间持久化用户提交的信息。 比如,当用户提交的信息验证失败重新返回提交信息页面时还原用户的输入。
将用户提交的信息存入Session
复制代码 代码如下:
Input::flash();
把指定的用户提交的信息存入Session
复制代码 代码如下:
Input::flashOnly('username', 'email');
Input::flashExcept('password');
如果你需要关联持久用户提交的信息的操作和重定向操作,可以使用如下的链式调用的方法:
复制代码 代码如下:
return Redirect::to('form')->withInput();
return Redirect::to('form')->withInput(Input::except('password'));
注意: 如果你想持久化其它的信息,请参考 Session 类.
获取已持久化的用户提交的信息
复制代码 代码如下:
Input::old('username');
文件上传
获取用户上传的文件
复制代码 代码如下:
$file = Input::file('photo');
判断指定文件是否已经被上传
复制代码 代码如下:
if (Input::hasFile('photo'))
{
//
}
file 方法返回了一个 Symfony\Component\HttpFoundation\File\UploadedFile 类的实例, 该类继承自PHP的 SplFileInfo 类,并提供了大量操作该用户上传的文件的方法。
移动一个已上传的文件
复制代码 代码如下:
Input::file('photo')->move($destinationPath);
Input::file('photo')->move($destinationPath, $fileName);
获取一个已上传的文件在服务器的真实路径
复制代码 代码如下:
$path = Input::file('photo')->getRealPath();
获取一个已上传的文件的大小
复制代码 代码如下:
$size = Input::file('photo')->getSize();
获取一个已上传的文件的 MIME 类型
复制代码 代码如下:
$mime = Input::file('photo')->getMimeType();
用户请求的详细信息
Request 类提供了许多 方法 用于获取关于请求的详细信息,该类继承自 Symfony\Component\HttpFoundation\Request 类。 下面提供了几个具有代表性的方法:
获取请求URI
$uri = Request::path();
判断请求路径是否符合指定模式
复制代码 代码如下:
if (Request::is('admin/*'))
{
//
}
获取请求URL
$url = Request::url();
获取请求URI信息
$segment = Request::segment(1);
获取请求头里的Content-Type信息
$value = Request::header('Content-Type');
获取 $_SERVER 数组里指定的值
$value = Request::server('PATH_INFO');
判断是否是使用ajax请求
复制代码 代码如下:
if (Request::ajax())
{
//
}
判断请求是否使用https连接
复制代码 代码如下:
if (Request::secure())
{
//
}
检测请求的响应格式
Request::format 方法基于 HTTP 请求头的 Accept 信息返回客户端希望获取的响应格式:
复制代码 代码如下:
if (Request::format() == 'json')
{
//
}

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

맨티스BT
Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

WebStorm Mac 버전
유용한 JavaScript 개발 도구

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경
