laravel 常用知识总结
看到一篇别人的文章感觉写的不错 就copy过来了
学习源头:
https://www.cnblogs.com/yjf512/p/3830750.html
aravel是个很强大的PHP框架,它剔除了开发中Web开发中比较痛苦的过程,提供了验证(authentication),路由(routing),Session和缓存(caching)等开发过程中常用到的工具或者功能。
Laravel的配置都存放在app/config中。

里面所有的*.php都按照return的形式返回数据,那么就可以使用Config::get("key")来获取配置。使用Config::set("key", "value") 来赋值配置项
要想使用不同的环境配置,就需要在config下创建对应配置的文件夹。然后它会覆盖对应的配置项。
获取当前的环境是使用App::environment(),判断当前环境是什么是使用:App::environment("local")
providers是用来配置对应的服务的,比如:

Laravel的请求周期:
1 请求先从public/index.php中进入
2 bootstrap/start.php文件创建app并检测环境
3 内部的 /Illuminate/Foundation/start.php文件配置相关设置并加载服务器
4 加载app/start目录下的文件
5 加载app/routes.php的路由设置
6 request通过controller等转化为response
7 返回response
路由配置:
配置的格式是:
Route::get('foo/bar', funciton(){return 'Hello World';})
路由参数是可以有下面几种的:

可选路由参数:

带有默认的可选的路由参数:

用正则表达式限定的路由参数:

传递参数限定的数组:

定义全局模式:

不同的参数定位到不同的路由:

好,现在有个问题是某些路由必须要登录或者验证才能访问怎么办?这里就使用到了路由过滤器这个东西。
比如下面这个例子,当年龄小于200的时候就跳转到主页:

Request中的操作:
获取用户提交的值:Input::get('name');
获取用户提交的值并指定默认值:Input::get('name', 'Sally');
用户提交的信息是否存在:Input::has('name')
获取所有用户提交的信息:Input::all()
获取其中几项指定的信息:Input::only('username', 'password');
获取除几项之外的提交信息:Input::except('card');
访问用户提交的数组:Input::get('products.0.name');
cookie操作:
获取Cookie中的值:Cookie::get('name')
添加一个Cookie:
$response = Response::make('Hello World');
response−>withCookie(Cookie::make(′name′,′value′,
minutes));
如果想在Response之前设置Cookie,使用Cookie::queue()
Cookie::queue(name,
value, $minute);
Session操作:
存储一个变量:Session::put('key', 'value');
读取一个变量:Session::get('key');
读取一个变量或者返回默认值:Session::get('key', 'default');
检查一个变量是否存在:Sesssion::has('key');
删除一个变量:Session::forget('key');
删除所有Session变量:Session::flush();
文件上传操作:
获取用户上传文件:$file = Input::file('photo');
判断是否有上传这个文件:Input::hasFile('photo');
移动上传的文件:
Input::file('photo')->move($destinationPath);
Input::file('photo')->move(destinationPath,
fileName);
获取上传文件大小:
Input::file('photo')->getSize();
获取上传文件类型:
Input::file('photo')->getMimeType();
获取用户请求路径:Request::path();
获取用户请求URL:Request::url();
获取Header中的信息:Request::header('Content-Type');
获取SERVER中的信息:Request::server('PATH_INFO');
重定向:
重定向: return Redirect::to('user/login');
有参数的重定向: return Redirect::to('user/login')->with('message', 'Login Failed');
重定向到路由:return Redirect::route('profile', array('user' => 1));
返回重定向到Action:return Redirect::action('UserController@profile', array('user' => 1));
视图层:
传递数据给视图:$view = View::make('greeting')->with('name', 'Steve');
将一个视图传递给另一个视图:$view = View::make('greeting')->nest('child', 'child.view');
返回json:return Response::json(array('name' => 'Steve', 'state' => 'CA'));
返回jsonp:return Response::json(array('name' => 'Steve', 'state' => 'CA'))->setCallback(Input::get('callback'));
返回下载文件:
return Response::download($pathToFile);
return Response::download(pathToFile,
status, $headers);
一个基本的控制器:

路由就长这样:

默认中,app/start/global.php文件中包含了一个处理所有异常的处理器。

监听fatal error,可以使用App::fatal方法。
日志操作:
Log::info
Log::warning
Log::error
laravel 常用知识总结的更多相关文章
- 【基于WPF+OneNote+Oracle的中文图片识别系统阶段总结】之篇一:WPF常用知识以及本项目设计总结
篇一:WPF常用知识以及本项目设计总结:http://www.cnblogs.com/baiboy/p/wpf.html 篇二:基于OneNote难点突破和批量识别:http://www.cnblog ...
- javascript常用知识点集
javascript常用知识点集 目录结构 一.jquery源码中常见知识点 二.javascript中原型链常见的知识点 三.常用的方法集知识点 一.jquery源码中常见的知识点 1.string ...
- AngularJS进阶(十二)AngularJS常用知识汇总(不断更新中....)
AngularJS常用知识汇总(不断更新中....) 注:请点击此处进行充电! app.controller('editCtrl',['$http','$location','$rootScope', ...
- 打造自己的Android常用知识体系
前言 Android常用知识体系是什么鬼?所谓常用知识体系,就是指对项目中重复使用率较高的功能点进行梳理.注意哦,不是Android知识体系. 古语道:学而不思则罔,思而不学则殆.如果将做项目类比为“ ...
- jQuery常用知识总结
jQuery常用知识总结 简介 选择器 属性操作 jQuery() each event事件 jQuery扩展 一.简介 What is jQuery jQuery is fast small and ...
- Python数据分析与挖掘所需的Pandas常用知识
Python数据分析与挖掘所需的Pandas常用知识 前言Pandas基于两种数据类型:series与dataframe.一个series是一个一维的数据类型,其中每一个元素都有一个标签.series ...
- Oracle常用知识小总结
永不放弃,一切皆有可能!!! 只为成功找方法,不为失败找借口! Oracle常用知识小总结 1. 创建自增主键 对于习惯了SQL SERVER的图形化界面操作的SQLer,很长一段时间不用oracle ...
- php常用知识集锦
php常用知识集锦 很多位置都有写好的代码,自己做项目的时候可以直接拿来用,而不用自己写,比如现在看到的菜鸟教程. 1.判断是否为空 empty($_POST["name"]) 2 ...
- javascript常用知识汇总
javascript这个语言庞大而复杂,我用了三年多了,还是皮毛都不会.从刚开始的jquery,到后来的es6,每天都在学习,每天都在忘记. 1.禁止手机虚拟键盘弹出 在开发适配手机的页面时,出现了这 ...
随机推荐
- 函数进阶之结合tornado
一.本篇博文内容 .协程函数 .面向过程编程 .递归和二分法 二.协程函数 协程函数:就是使用了yield表达式形式的生成器 首先函数的传参有几种? 三种: 1.实参形参传参 2.闭包的形式传参 3. ...
- nginx最常见的18道面试题
Nginx的并发能力在同类型网页服务器中的表现,相对而言是比较好的,因此受到了很多企业的青睐,我国使用Nginx网站的知名用户包括腾讯.淘宝.百度.京东.新浪.网易等等.Nginx是网页服务器运维人员 ...
- JSP的动态Include的静态Include
1. 静态导入示例 先总结: 1:静态include是把被引入的文件拼接到本页面中,再做为一个整体来编译,返回结果给客户端. 动态include是分别编译本页面和被引入的页面,再把结果合成一个html ...
- PHP开发框架
利用PHP开发框架可以帮助你编写干净和可重用的代码.PHP开发框架遵循MVC设计模式,以确保能够明确区分逻辑和演示文稿.但是有关PHP框架的争论也不少,这是因为有的人喜欢性能,有的人喜欢文档,而有的人 ...
- 【arc101】比赛记录
这场还好切出了D,rt应该能涨,然而这场的题有点毒瘤,700分的D没多少人切,更别说EF了.(暴打出题人)既然这样,干脆就水一篇博客,做个简单的比赛记录. C - Candles 这题是一道一眼题,花 ...
- IOS 拨打电话:4006 701 855 苹果中国
IOS 拨打电话:4006 701 855 苹果中国
- Use default arguments instead of short circuiting or conditionals使用默认实参代替短路和条件
- Java中各种集合特点总结
1:集合: (1) Collection(单列集合) List(有序,可重复) ArrayList 底层数据结构是数组,查 ...
- Redis源码研究:哈希表 - 蕫的博客
[http://dongxicheng.org/nosql/redis-code-hashtable/] 1. Redis中的哈希表 前面提到Redis是个key/value存储系统,学过数据结构的人 ...
- 解决:python命令行运行出错 ImportError: No module named ...
一. 发现问题 今天在cmd命令行运行一个py文件,本来在pycharm中运行好好的文件,在命令行却报错了,直接提示我:ImportError: No module named 'homeworks' ...