基本介绍

简介

laravel是一个简洁,优雅的PHP开发框架,使用IoC(依赖注入容器)结构和MVC模式。Laravel框架包括数据库迁移、Eloquent ORM(数据库关系)、路由、验证、视图以及Blade模板等等。

作为一个容器框架,laravel 重点解决大型项目中,各个模块功能冗余,耦合度高的问题.让各个模块的功能代码都能轻松通过laravel框架衔接起来,以保障系统在无数个版本的开发过后,代码依然简洁明了,可读性高.让每个参与该项目的开发者,更加专注于自己的业务逻辑.

安装

Laravel 使用 Composer 来管理项目依赖。因此,在使用 Laravel 之前,请确保你的机器已经安装了 Composer。

composer global require "laravel/installer"

确保将 composer vender bin 目录放置在你的系统环境变量 $PATH 中,以便系统可以找到 Laravel 的可执行文件。该目录根据您的操作系统存在不同的位置中;一些常见的配置包括:

macOS: $HOME/.composer/vendor/bin
GNU / Linux 发行版: $HOME/.config/composer/vendor/bin

安装完成后, laravel new 命令会在您指定的目录创建一个全新的 Laravel 项目。例如, laravel new blog 将会创建一个名为 blog 的目录,并已安装好所有的 Laravel 依赖项:

laravel new blog

通过 Composer 创建项目

或者,你也可以在终端中运行 create-project 命令来安装 Laravel:

composer create-project --prefer-dist laravel/laravel blog

本地开发环境

如果您在本地安装了 PHP,并且您想使用 PHP内置的服务器来为您的应用程序提供服务,则可以使用 serve Artisan 命令。该命令会在 http://localhost:8000 上启动开发服务器:

php artisan serve

配置

公共目录

安装完 Laravel 之后,你必须将 web 服务器根目录指向 public 目录。
该目录下的 index.php 文件将作为所有进入应用程序的 HTTP 请求的前端控制器。

配置文件

Laravel 框架的所有配置文件都放在 config 目录中。每个选项都有注释,方便你随时查看文件并熟悉可用的选项。

目录权限

安装完 Laravel 后,你可能需要给这两个文件配置读写权限:storage 目录和
bootstrap/cache 目录应该允许 Web 服务器写入,否则 Laravel 程序将无法运行。
如果你使用的是 Homestead 虚拟机, 这些权限已经为你配置好了。

应用密钥

安装 Laravel 之后下一件应该做的事就是将应用程序的密钥设置为随机字符串。
如果你是通过 Composer 或 Laravel 安装器安装的 Laravel,
那这个密钥已经为你通过 php artisan key:generate 命令设置好了。

通常来说,这个字符串长度为 32 个字符。密钥可以在 .env 环境文件中设置。
前提是你要将 .env.example 文件重命名为 .env。 
如果应用程序密钥没有被设置,就不能确保你的用户会话和其他加密数据的安全!

其他配置

除了以上的配置,Laravel 几乎就不需要再配置什么了。你随时就能开发!
但是,可能的话,还是希望你查看 config/app.php 文件及其注释。
它包含几个你可能想要根据你的应用来更改的选项,比如 timezone 和 locale。

目录结构

App/             目录包含应用程序的核心代码。
    Console/    目录包含了所有自定义的 Artisan 命令。
    Exceptions/ 目录包含了应用的异常处理器,也是应用抛出异常的好地方。
    Http/        目录包含了控制器、中间件和表单请求。几乎所有的进入应用的请求的处理逻辑都被放在这里。
    Providers/    目录包含了应用的所有 服务提供器 。
    Rules/        目录默认不存在,它会在运行 Artisan 命令 make:rule 命令时被创建。包含应用自定义验证规则对象

Bootstrap/    目录包含引导框架并配置自动加载的文件。
Config/        目录,顾名思义,包含应用程序所有的配置文件。
Database/        目录包含数据填充和迁移文件。你还可以把它作为 SQLite 数据库存放目录。
public/        目录包含了入口文件 index.php ,它是进入应用程序的所有请求的入口点。
resource/        目录包含了视图和未编译的资源文件(如 LESS、SASS 或 JavaScript)。
routes/        目录包含了应用的所有路由定义
    web.php        路由基本上都要定义在 web.php 文件中
    api.php        包含的路由位于 api 中间件组约束之内,支持频率限制功能,这些路由是无状态的,所以请求通过这些路由进入应用需要通过 token 进行认证并且不能访问 Session 状态。
    console.php    用于定义所有基于闭包的控制台命令
    channels.php    用于注册应用支持的所有事件广播频道    
storage/        目录包含编译的 Blade 模板、基于文件的会话和文件缓存、以及框架生成的其他文件。
    app/        用于存放应用生成的文件
    framework/    用于存放框架生成的文件和缓存
    logs/        存放的是应用的日志文件
tests/            目录包含自动化测试文件。Laravel 已内置了 PHPUnit 的测试范例供你参考。
vendor/        目录包含你的 Composer 依赖包。
powered by GitbookEdit Time: 2023-04-08 10:28:32