目录
前言:这个学期通过项目实战的方式学会了如何使用laravel框架开发一个网站
一、什么是laravel框架
Laravel是泰勒·奥特威尔 ( Taylor Otwell)使用PHP语言开发的一款开源的Web应用框架于2011年6月首次发布,发布以来备受PHP开发人员的喜爱,用户的增长速度十分迅猛,它一套简洁﹑优雅的框架,具有简洁且富于表达性的语法。
Laravel秉承“Don't Repeat Yourself”(不要重复你自己)的理念,提倡代码的重用。Laravel为开发大型应用提供了强大的功能,包括自动验证﹑路由﹑Session﹑缓存﹑数据库迁移。
二、它的特点是什么
Laravel框架的特点有:
1.对外只提供一个入口/public/index.php ,让框架统一管理项目的所有的请求。
2.采用MVC设计模式,帮助团队更好地协同开发,为项目后期的维护提供方便。
3.支持Composer依赖管理工具,可以为项目自动安装依赖·(螺丝刀)
4.采用ORM方式操作数据库,支持AR模式。
5.注重代码的模块化和可扩展性,开发者可以通过Laravel组件库Packalyst找到想要添加的组件。
6.自带各种方便的服务,提供开箱即用的用户身份验证功能和缓存系统,可以快速开发出相应功能。
7.具有路由功能, Laravel框架通过路由分发每一个请求,并可以对请求进行分组。8.提供Artisan命令行工具,帮助开发人员将手动的工作自动化·
三、Composer介绍
1、什么是Composer
Composer 是 PHP的一个依赖管理工具。它允许你声明项目所依赖的代码库,它会在你的项目中为你安装他们。Composer 不是一个包管理器。是的,它涉及 "packages" 和 "libraries",但它在每个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装。默认情况下它不会在全局安装任何东西。因此,这仅仅是一个依赖管理。
Composer 中文网 / Packagist 中国全量镜像Composer 中文网致力于推广 PHP 世界的包管理工具 Composer 在国内的普及以及独立开发并维护 Packagist 中国全量镜像系统。我们还联合社区的小伙伴共同翻译并维护 Composer 中文文档。让国内的 PHP Coder 能够愉快的使用 Composer 和 Packagist 。https://www.phpcomposer.com/1、开启PHP中openssl扩展 2、安装composer需要明确php.exe的文件路径 3、安装composer需要联网2、在项目文件中安装,执行以下命令:
composer create-project laravel/laravel 项目文件夹名 --prefer-dist
安装完成后在终端输入composer -V,如下就安装成功:
如果安装之后,输入composer -v 显示composer不是内部或外部命令的话,那就是在安装的时候没有自动配置环境,需手动去“系统”→“系统信息”→“高级系统设置”→“环境变量”→“配置环境” 加入:自己安装的路径\ComposerSetup\bin就可以了。
四、项目目录简介
app:包含了 Laravel 应用程序的核心代码和相关配置文件
bootstrap:该目录包含了 Laravel 框架的一些核心文件,用于启动应用程序和进行必要的初始化操作,一般情况不动
config:用于存放应用程序的配置文件
database:用于存放与数据库相关的配置和迁移文件
public:它是作为项目的公共访问入口点的文件夹
resources:用于存放项目的资源文件
routes:用于定义项目的路由
tests:用于存放项目的测试代码
vendor:用于存放通过 Composer 安装的依赖包(即第三方库或扩展)。
五、路由
1、路由的常见请求方式
GET 请求:用于获取资源或页面,一般用于浏览器请求。如:
Route::get('/user', 'UserController@index');
POST 请求:用于提交数据或进行创建操作。如:
Route::post('/user', 'UserController@store');
PUT 请求:用于更新数据或进行编辑操作。如:
Route::put('/user/{id}', 'UserController@update');
PATCH 请求:用于部分更新数据。如:
Route::patch('/user/{id}', 'UserController@update');
DELETE 请求:用于删除数据。如:
Route::delete('/user/{id}', 'UserController@destroy');
OPTIONS 请求:用于预检查服务器支持的请求方法。如:
Route::options('/user', 'UserController@options');
ANY 请求:用于匹配任意请求方法。如:
Route::any('/user', 'UserController@handle');
这些请求类型可以用于定义具体的路由,将请求的URL映射到相应的控制器方法,从而实现不同的功能和逻辑处理。
六、总结
简洁优雅:Laravel 的编码风格非常简洁和优雅,代码易读易写。使用了一些现代的 PHP 特性,如方法注入、命名空间等,将代码组织得更加清晰简洁。
强大的生态系统:Laravel 拥有庞大而强大的生态系统,包括丰富的扩展包和生态工具。通过 Composer,我们可以轻松地集成其他优秀的包到我们的项目中。
便捷的命令行工具:Laravel 提供了丰富的命令行工具,可以高效地完成常见的开发任务,如创建控制器、模型、数据库迁移等。这些工具大大提高了开发效率。
MVC 开发模式:Laravel 采用了 MVC(Model-View-Controller)开发模式,降低了代码的耦合度,使代码更易于测试和维护。通过模型、视图和控制器的分离,实现了职责的清晰分离。
数据库迁移:Laravel 提供了数据库迁移的功能,可以方便地管理数据库结构的变化。通过创建迁移文件,我们可以轻松地进行数据库表的创建、修改和删除,使数据库的版本控制变得简单。
高度可定制性:Laravel 提供了丰富的配置选项,可以轻松地自定义应用程序的各种设置。通过配置文件,我们可以灵活地配置数据库连接、缓存驱动、日志等,满足不同项目的需求。
强大的路由系统:Laravel 的路由系统非常强大灵活,可以用来定义各种类型的路由(GET、POST、PUT、DELETE等),同时支持路由分组、命名路由、中间件等高级特性,使得路由的管理和维护变得简单。
综上所述,Laravel 是一款优秀的 PHP 框架,它有着可靠稳定的架构,同时提供了丰富的功能和易用的工具,为开发人员提供了高效、愉悦的开发体验,大大提升了开发效率。