laravel框架总结,从0开始

一、laravel框架:
	官网:
		https://laravel.com/
	中文网:
		http://laravelacademy.org
		https://laravel-china.org/

二、laravel框架的安装,在文档中,已经解释了好多。我这里直接使用git从github上安装了下,具体操作,包括操作中出现的问题,总结下面几步:
	1.下载5.2版本:
		先fork官方:https://github.com/laravel/laravel(具有fetch&push权限,也不一定需要,因为我们不需要推送)
		git clone -b 5.2 自己fork后的地址
	2.先通过composer,安装必需的依赖包(前期需要安装composer,并配置为中国镜像地址,要不下载速度太慢)
		composer install
	3.在本地配置虚拟主机环境,例如:laravel.devil.com,开启浏览器就可访问了(配置记得指向 laravel/public 目录下,入口文件为 public/index.php)
	4.浏览器访问,出错!我们还需进行laravel内部的几个配置:
		1>git下载下的laravel包,没有 '.env' 配置文件,从 .env.example 复制
			cp .env.example .env
		2>确保 storeage 和 bootstrap/cache 目录具有写权限
		3>laravel默认必需配置应用的 'key'(APP_KEY),session等其他加密数据需要,我们来生成key
			php artisan key:generate
	5.至此,配置成功!

laravel的维护模式:
	当我们暂停用户的访问、需要升级服务器或部署代码等,很方便,直接使用:
		php artisan down
	站点恢复,使用:
		php artisan up
	维护模式几点需要知道的:
		1.默认显示的模板 'resources/view/errors/503.blade.php'
		2.暂停模式,我们可能担心的队列任务:都不会执行,启用后,队列会继续执行(laravel都替我们想好了,相信别人的思想比我们高的不是一点,有时间可以去看看它的机制)
		3.维护模式命令的执行,需要几秒时间,手册上说:
			可以使用 'Envoyer' 实现 '0秒下线',作为替代方案

三、laravel的目录结构:

	// git相关
	.gitignore - git的忽略文件列表
	readme.md - github上的项目的说明简介。md - markdown 语法

	.env - laravel环境配置文件(切记不要将 .env 提交到git源码控制中,应该写入到 '.gitignore' 中。每个人的配置不同)
	.env.example - 可以将.env作为.env.example,上传到git版本库,其他开发者,就可根据它来配置自己的.evn
	artisan - laravel自带的命令行接口名称,为开发过程中,提供了很多有用的命令(php artisan list 查看,必需掌握!)

	// composer相关
	composer.json - composer的包配置文件
	composer.lock - composer的包配置锁文件(它存在的话,就不会从composer.json中安装依赖包,具体可查看手册)

	// js相关,laravel提供了一个 'Elixir' 服务(需要我们也安装node、gulp,但不是必需使用这个功能)
	gulpfile.js - gulp前端自动化编译、打包工具
	package.json - node的包配置文件

	phpunit.xml - phpunit单元测试配置文件
	server.php - 模拟了服务器的重定向,会引入 'public/index.php',注视说是用于测试(当我们未配置rewrite的话,就可直接通过server.php来访问laravel应用)

	app/ - 应用的核心代码
		Console - CLI方式进入应用,命令行相关
		Events - 放置事件类的地方,事件可以用于通知应用其它部分给定的动作已经发生,并提供灵活的解耦的处理。
		Exceptions - 放置事件类的地方,事件可以用于通知应用其它部分给定的动作已经发生,并提供灵活的解耦的处理。
		Http - HTTP方式进入应用
			Controllers - 控制器文件
			Middleware - 中间件
			Requests - 表单请求验证,参考 "验证":http://laravelacademy.org/post/3279.html
			Kernel.php - 注册中间件
			routes.php - 路由
		Jobs - 放置队列任务的地方,应用中的任务可以被队列化,也可以在当前请求生命周期内同步执行。
		Listeners - 包含事件的处理器类,处理器接收一个事件并提供对该事件发生后的响应逻辑
		Policies - 用户授权策略相关,参考 "用户授权":http://laravelacademy.org/post/3082.html
		Providers - 核心服务提供
		User.php - 用户模型类(系统自带)
		// 整个框架都没找到 'MVC' 的models,参照 "http://laravelacademy.org/post/2995.html",创建对应的model。我们应该将model专门放置一个 'Models' 目录
		php artisan make:model Models/User
	bootstrap/ - 包含了少许文件用于框架的启动和自动载入配置
		cache/  - 包含框架生成的启用文件以提高性能
	config/ - 应用的所有配置文件
	database/ - 应用的数据迁移和填充目录,包括数据模型工厂目录
		factories - 数据模型工厂
		migrations - 数据迁移
		seeds - 数据填充
	public/ - 前端、资源文件(图片、js、css等)
		.htaccess - apache服务器的rewrite配置规则(nginx好像不支持.htaccess吧)
		favicon.ico - 网站图标
		index.php - 入口文件
		robots.txt - 爬虫相关
		web.config - IIS服务器的rewrite配置规则
	resources - 视图目录、语言包、前端原生资源文件(less、sass、coffeescript,或者是我们一般的js、css)
		assets - 前端原生资源文件
		lang - 语言包
		views - 视图
	storage - 包含了编译过的Blade模板、基于文件的session、文件缓存,以及其它由框架生成的文件
		app - 用于存放应用要使用的文件
		framework - 用于存放框架生成的文件和缓存
			cache - 缓存文件
			sessions - session文件
			views - 编译的模板文件
		logs - 应用的日志文件
	tests - 自动化测试文件
	vendor - composer安装的依赖包


四、安装2个基本的扩展包:
	Entrust - RBAC权限管理(这个是后台权限管理必备)
		参考:
			http://laravelacademy.org/post/3755.html
			http://laravelacademy.org/post/3761.html

	prettus/l5-repository - Repository开发模式的支持(系统的架构扩展)
		参考:http://oomusou.io/laravel/laravel-architecture/ ----------- 经典,建议必读!

	以上2个,都有别人已经使用了,可参照:
		https://github.com/yuansir/laravel5-rbac-example - 可进行模拟学习!

	下载量最高的100个laravel包,参照:
		https://laravel-china.org/topics/2530

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值