zoukankan      html  css  js  c++  java
  • Laravel 目录结构分析

    根目录结构
    /app
    /bootstrap
    /public
    /vendor
    artisan
    composer.json
    server.php

    1./app
    整个Laravel 目录中最需要我们注意的地方,包含设置(config)、路由(routing)、MVC 模型的三大模块都在这里,项目的主要代码工作都在这个目录下完成。

    2./bootstrap
    这个目录主要是用来存放所有的第三方代码,包括框架函数源码(/vendor/laravel)、插件和扩展等。

    3./public
    这个目录是网站的访问入口,请求都会进入 index.php ,同时存放所有对外开放的资源目录,如 css、javascript 以及图片等等皆被存放在此。

    4./vendor
    这个目录主要是用来存放所有的第三方代码,包括框架函数源码(/vendor/laravel)、插件和扩展等。

    5.artisan
    工匠指令,这是 Laravel 框架里的命令行工具。

    6.composer.json
    该文件是应用的配置文件,描述了应用的相关信息,如名称、版本、许可证书等,同时也写明了应用启动时会自动加载某些文件夹或文件,见"autoloand",所以

    当你需要在 controller 或者 model 添加子目录时可以在 autoload 的 classmap 处申明;也允许你申明应用所需的依赖库进而会在项目里帮你安装依赖库;

    7.server.php
    该文件其实是给php内置的服务器用的,当使用 php -S localhost:9999 server.php 开启内置服务器的时候,就会使用server.php做了部分url兼容的工作,
    往地址栏输入:localhost:9999即可打开项目主页。

    而在laravel项目的目录下敲命令:php artisan serve,会默认打开端口8000,此时输入http://localhost:8000,可打开laravel项目的主页。

    不过需将/app/storage设置为可读写。

    Application 目录结构

    /config
    /controllers
    /databases
    /lang
    /models
    /start
    /storage
    /tests
    /views
    filters.php
    routes.php

    1./config
    虽然 Laravel 程序在一开始的使用可以不做任何设置,但我们肯定还需要更多的设置来完成业务上的需求,所有的设置都放在这个目录中。

    2./controllers
    这个目录放 MVC 模型中的控制器(controller) 。

    3./database
    /migrations/:包含一些PHP类,允许Laravel更新当前数据库的架构并同时保持所有版本的数据库的同步。迁移文件是使用Artisan工具生成的。

    /seeds/:       包含允许Artisan工具用关系数据来填充数据库表的PHP文件。

    4./lang
    语言目录,Laravel 框架的语系采用文字格式,先用目录做各语系的分别,再依所需要的文件来存放,默认是英文(“en”)。

    转换语言的方法是 config 目录下的 application.php 文件中的language ,设定值与语言文件夹名相同即可。

    5./models
    MVC 模型中的 M,就是我们的业务逻辑(business logic),基本上就是定义了我们要从数据库中取出的内容、通过 web service 要传出的内容等。

    原则上,也是搭配著 Laravel 框架中 Eloquent ORM 对数据库进行存取,包含在 auto-loading 之中。

    6./start
    包含与 artisan 工具、global(不限定本地环境,无论处于什么环境都会加载里面的内容)和 locale 上下文相关的启动文件,应用响应请求时会加载这些文件。

    7./storage
    存储 Laravel 各种服务的临时文件,如session、cache、log、views等,必须保证可以写入,由 Laravel 自己维护。

    8./tests
    Laravel 框架整合了 PHPUnit ,方便我们对专门的程序进行单元测试,所以我们可以直接參考PHPUnit 文件来编写单元测试,在全新的文件目录中含有 example.test.php 的基本范例。可以使用artisan工具一次性执行所有的测试。

    9./views
    HTML 的模板(template),也就是 MVC 模型中的 V。而模板除了原始的 HTML 格式外,Laravel 框架提供了 Blade Template Engine ,让我们可以用比较简洁的方式编写模板文件,而这些文件只要的扩展名改为 .blade.php ,例如 index.blade.php,模板引擎就会自动帮我们编译了,想要了解更多的內容,说明文件 – Blade Template Engine 中有详细介绍。

    10.filters.php
    文件包含应用程序的筛选方法和一些过滤器,为程序使用。Laravel具有访问控制和 XSS 保护的一些预定义筛选器。

    11.routes.php
    路由设置,接收请求,再根据我们的设定调用相应的程序进行回应。若是请求不存在或请求失败则返回 404 或 500 的错误回应。

  • 相关阅读:
    Oracle备份 还原命令
    maven错误解决一:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.5.1:compile (default-compile)
    maven File encoding has not been set
    maven 错误: 程序包org.junit不存在
    <转>JDBC获取DB元数据
    <转>SQL语句执行顺序说明
    Oracle 创建/删除 表空间、用户、授权
    lucene/solr 修改评分规则方法总结
    Solr入门之(8)中文分词器配置
    Solr入门之(7)Solr客户端界面简介
  • 原文地址:https://www.cnblogs.com/linguoguo/p/3929693.html
Copyright © 2011-2022 走看看