Laravel 是一个用 PHP 编写的开源、现代的 Web 应用框架,它遵循 MVC(Model-View-Controller)架构模式,旨在为开发者提供简洁、优雅的工具来开发复杂的 Web 应用。Laravel 强调代码的简洁性和可读性,同时提供了大量的功能和扩展包,使得开发者能够快速、高效地构建应用。
安装 Laravel
要使用 Laravel,首先需要在你的开发环境中安装 Composer,因为 Laravel 通过 Composer 管理其依赖关系。
安装 Composer:访问 Composer 官网 下载并安装 Composer。
通过 Composer 安装 Laravel:打开终端(或命令提示符),运行以下命令来创建一个新的 Laravel 项目。
composer create-project --prefer-dist laravel/laravel blog
这里
blog
是你的项目目录名,你可以根据需要更改为其他名称。
Laravel 项目结构
Laravel 的项目结构遵循 MVC 模式,主要包括以下目录:
- app/:包含应用的核心代码,如控制器、模型、视图和中间件等。
- bootstrap/:包含框架启动和自动加载所需的文件。
- config/:配置文件目录,包含应用的所有配置文件。
- database/:数据库迁移和种子文件目录。
- public/:应用的入口文件,以及 CSS、JS、图片等资源文件。
- resources/:包含视图文件、语言文件和原始资源文件(如 Sass 和 Less)。
- routes/:包含应用的路由定义。
- storage/:包含框架生成的文件,如缓存、日志和会话数据。
- tests/:包含自动化测试代码。
- vendor/:通过 Composer 安装的依赖包。
路由(Routing)
Laravel 的路由定义在 routes
目录下的几个文件中,如 web.php
用于定义 Web 路由,api.php
用于定义 API 路由。你可以通过定义路由来指定请求的 URL 和对应的控制器方法。
// 在 routes/web.php 中定义路由
Route::get('/', function () {
return view('welcome');
});
Route::get('/hello', 'HelloController@index');
控制器(Controllers)
控制器负责接收用户的输入并调用相应的业务逻辑,然后将结果返回给视图。
// 创建一个新的控制器
php artisan make:controller HelloController
// 在 HelloController.php 中定义方法
public function index()
{
return 'Hello, World!';
}
视图(Views)
视图负责将应用的数据展示给用户。Laravel 的视图文件通常位于 resources/views
目录下。
<!-- resources/views/hello.blade.php -->
<html>
<body>
<h1>Hello, {{ $name }}!</h1>
</body>
</html>
在控制器中返回视图并传递数据:
return view('hello', ['name' => 'Laravel']);
模型(Models)
模型是 MVC 架构中的“M”,代表数据层。Laravel 的 Eloquent ORM 提供了一个简单、优雅的 ActiveRecord 实现来与数据库进行交互。
// 创建一个新的模型
php artisan make:model User
// 在 User.php 中定义模型
class User extends Model
{
//
}
数据库迁移(Migrations)
数据库迁移用于版本控制数据库结构。你可以通过迁移文件来定义和修改数据库表。
php artisan make:migration create_users_table --create=users
// 在生成的迁移文件中定义表结构
Schema::create('users', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
// 运行迁移
php artisan migrate
认证(Authentication)
Laravel 提供了内置的认证系统,可以轻松实现用户认证。
php artisan make:auth
这个命令会生成用户登录、注册、密码重置等视图和路由,并配置好认证控制器。
结尾
Laravel 提供了丰富的功能和灵活的扩展性,使得开发复杂 Web 应用变得简单高效。以上只是 Laravel 框架使用的一个非常基础的介绍,要深入学习 Laravel,建议阅读 Laravel 官方文档,并动手实践。