laravel框架目录分析
(1)app 目录:项目的核心目录,主要用于存放核心代码,包括控制器,模型,中间件,包含了MVC结构中的两个。User.php是自带的示例模型文件,后面进行模型创建,就要创建在这个根目录下。
(2)bootstrap 目录:laravel启动目录,项目运行时需要的文件都在这个文件夹里面,一般不要去动。
(3)config 目录:项目的配置目录,主要存放配置文件,比如数据库的位置,后面这里面会存放更多配置文件,例如第三方的依赖也会存在这里。app.php:全局配置文件,在后期开发的时候需要频繁的使用这个配置文件;auth.php:用户登录时候需要用到的用户认证模块的配置文件;database.php:数据库的配置文件;filesystems.php:文件系统(如文件存储等)的配置文件。
(4)database 目录:数据迁移目录。factories:存放一些工厂模式需要用的些文件;migrations: 迁移,存放的是迁移文件(创建/删除/修改数据表操作的类文件);seeds:播种、种子,存放的是种子(填充器)文件(模拟向数据表中写入数据的操作类)。
(5)public 目录(站点目录):项目的入口文件和系统的静态资源目录(css,img,upload)后期使用的外部静态文件(JS,css,图片等)都需要放到public目录下。并且后去的网站的根目录也是这个目录。
(6)recources 目录:存放视图文件,还有就是语言包文件的目录。
(7)routes 目录:定义路由目录,web.php是定义路由的文件,laravel框架的路由在使用的时候必须先定义。
(8)storage 目录:主要是存放缓存文件和日志文件,还具有上传文件的功能,注意,如果在Linux环境下,该目录需要有可写权限(后期用户上传文件如果存放在bending这也在此目录下)。app:保存用户上传文件的路径;framework:框架自带的文存储目录;logs:框架的日志文件存储位置。
(9)vendor 目录:框架的灵魂。主要是存放第三方的类库文件,laravel思想主要是共同的开发,不要重复的造轮子(例如,里面可能存在验证码类,上传类, 邮件类),该目录还存放laravel框架的源码。注意如果要使用composer软件管理的,composer下载的类库都是存放在该目录下面的。
(10).env文件: 主要是设置一些系统相关的环境配置文件信息。config目录里面的文件配置内容一般都是读取该文件里面的配置信息(config里面的配置项的值基本都是来自.env文件)。
(11)artisan 脚手架文件:主要用于生成的代码(自动生成)。
(12)composer.json依赖包配置文件:声明当前需要的软件依赖,但是不能删除,composer需要使用。