初识Laravel框架

学习目标

了解Laravel框架,能够说出Laravel框架的特点

掌握开发环境的搭建,能够配置和部署Web服务器 MAMP PRO

掌握Laravel框架的安装,能够创建和运行Laravel项目

了解Laravel框架的目录结构,能够说出每个目录的作用

章节概述
在实际开发中,使用框架可以使开发者节省在底层代码花费的时间,将主要精力放在业务逻辑上,同时还能保证项目的可升级性和可维护性。市面上常见的PHP框架有很多,本书选择市面上非常流行的Laravel框架进行讲解。本章主要对Laravel框架的概念和开发环境的搭建等基础知识进行详细讲解。

目录

什么是Laravel框架

1.1什么是Laravel框架
先定一个小目标:
了解什么是Laravel框架,能够说出Laravel框架的概念与特点
什么是Laravel框架

Laravel是泰勒·奥特威尔(Taylor Otwell)使用PHP语言开发的一款开源的Web应用框架。

于2011年6月首次发布,发布以来备受PHP开发人员的喜爱,用户的增长速度十分迅猛。

Laravel是一套简洁、优雅的框架,具有简洁且富于表达性的语法。

Laravel秉承“Don't Repeat Yourself”(不要重复你自己)的理念,提倡代码的重用。

Laravel为开发大型应用提供了强大的功能,
包括自动验证、路由、Session、缓存、数据库迁移等。

Laravel框架的特点:index.html

1.对外只提供一个入口/public/index.php,让框架统一管理项目的所有的请求。

2.采用MVC设计模式,帮助团队更好地协同开发,为项目后期的维护提供方便。

3.支持Composer依赖管理工具,可以为项目自动安装依赖。(螺丝刀)

4.采用ORM方式操作数据库,支持AR模式。

5.注重代码的模块化和可扩展性,
开发者可以通过Laravel组件库Packalyst找到想要添加的组件。

6.自带各种方便的服务,提供开箱即用的用户身份验证功能和缓存系统,
可以快速开发出相应的功能。

7.具有路由功能,Laravel框架通过路由分发每一个请求,并可以对请求进行分组。

8.提供Artisan命令行工具,帮助开发人员将手动的工作自动化。

多学一招:MVC设计模式

MVC是Xerox PRAC(施乐帕克研究中心)在20世纪80年代为编程语言Smalltalk-80发明的一种软件设计模式。到目前为止,MVC已经成为一种被广泛使用的软件开发模式。

MVC采用了人类分工协作的思维方法,将程序中的功能实现、数据处理和界面显示相分离,从而在开发复杂的应用程序时,开发者可以专注于其中的某个方面,进而提高开发效率和项目质量,便于代码的维护。

MVC的作用:

l模型(Model),负责数据操作,主要用来操作数据库。通常情况下,一个模型对应一张数据表。

l视图(View),负责渲染视图,主要用于展示页面。

l控制器(Controller),负责所有业务的处理。通常情况下,一个控制器只处理一类业务。例如,用户控制器实现用户注册登录功能;订单控制器实现订单的生成等功能。

搭建开发环境

1.2.1 Apache安装与配置
掌握Apache的安装与配置,能够独立完成Apache的安装与配置
安装Apache的基本步骤:

获取安装包解压

下载安装包
在Apache Lounge网站中获取编译的版本,在网站中找到httpd-2.4.38-win32-VC15.zip压缩包进行下载。

解压安装包
将压缩包里面的Apache24目录中的文件解压到C:\web\apache2.4。

安装运行库
Apache安装包使用Microsoft Visual C++ 2017运行库进行编译,在安装Apache前需要先在Windows系统中安装此运行库。
配置****Apache

配置安装路径
在conf\httpd.conf配置正确的安装路径:

 `Define SRVROOT "C:\web\apache2.4"`

配置服务器域名

在conf\httpd.conf中去掉服务器域名的注释:

`ServerName www.example.com:80`

安装

安装Apache命令:

httpd -k install -n Apache2.4

卸载

卸载Apache命令:

httpd -k uninstall-n Apache2.4

启动Apache服务

选择Start启动服务,当图标由红色变为绿色表示启动成功。

访问测试

访问Apache默认站点

通过浏览器访问http://localhost,如果显示“It works !”说明Apache正常运行。
1.2.2 PHP安装与配置

掌握PHP的安装与配置,能够独立完成PHP的安装与配置

安装PHP的基本步骤

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CRSMMKO4-1687698884144)(C:\Users\Huangxiaolei\AppData\Roaming\Typora\typora-user-images\image-20230625202837120.png)]

获取并解压php

下载安装包

选择PHP 7.2.15、Thread Safe版本下载。

解压

将压缩包解压,保存到C:\web\php7.2目录中。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-f9ecP6JI-1687698884144)(C:\Users\Huangxiaolei\AppData\Roaming\Typora\typora-user-images\image-20230625202918766.png)]

创建配置文件

创建php.ini文件

在PHP安装目录下复制php.ini-development文件,并命名为php.ini,作为PHP的配置文件。

在Apache中引入PHP

LoadModule php7_module "C:/web/php7.2/php7apache2_4.dll"

<FilesMatch "\.php$">

  setHandler application/x-httpd-php
  
#修改Apache配置文件httpd.conf引入PHP模块。
PHPIniDir "C:/web/php7.2"

LoadFile "C:/web/php7.2/libssh2.dll"

测试安装结果

在C:\web\apache2.4\htdocs下创建test.php文件,查看PHP状态信息。

<?php

   phpinfo();

?>

开启常用扩展

修改PHP扩展文件保存路径

在php.ini中搜索文本extension_dir,去掉注释,修改成正确路径。

extension_dir = "c:/web/php7.2/ext"

开启常用PHP扩展

extension=curl

extension=gd2

extension=openssl

配置索引页

在Apache配置文件conf\httpd.conf中搜索DirectoryIndex,配置索引页。

<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>

1.2.3 MySQL****安装与配置

掌握MySQL的安装与配置,能够独立完成MySQL的安装与配置

安装MySQL的基本步骤:

安装****MySQL

获取并解压****MySQL

获取社区版压缩包mysql-5.7.24-win32.zip

将其解压保存到C:\web\mysql5.7目录中。

安装****MySQL

输入以下命令开始安装

cd C:\web\mysql5.7\bin

mysqld -install mysql5.7

创建配置文件

创建****my.ini

在文件中指定安装目录(basedir)、数据库文件保存目录(datadir)和端口号(port)。

[mysqld]
basedir=C:/web/mysql5.7
datadir=C:/web/mysql5.7/data
port=3306

初始化数据库

执行命令初始化数据库

初始化数据库命令如下。

mysqld --initialize-insecure

•–initialize 表示初始化数据库。

•-insecure 表示忽略安全性。当省略“-insecure”时,MySQL 将自动为默认用户root 生成一个随机的复杂密码,而加上“-insecure”时,默认用户root 的密码为空。

自动生成的密码输入比较麻烦,因此这里选择忽略安全性。

启动****MySQL

启动MySQL服务

启动MySQL服务的命令如下。

net start mysql5.7

停止MySQL服务

停止MySQL服务的命令如下。

net stop mysql5.7

登录****MySQL

登录MySQL服务器

登录MySQL服务器命令如下。

mysql -u root

设置密码

设置root用户的密码

登录MySQL后,将root用户的密码设为123456。

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

1.2.4 配置虚拟主机

掌握虚拟主机的配置方法,能够独立完成虚拟主机的配置

配置虚拟主机基本步骤:

配置域名

修改hosts文件

在hosts文件的最底部添加记录

127.0.0.1 laravel.test

hosts文件用于配置域名与IP地址之间的解析关系,当请求域名在hosts文件中存在解析记录时,可直接使用该记录,只有当不存在解析记录时,才通过DNS域名解析服务器进行解析。

启用辅配置文件

修改****httpd.conf

启用虚拟主机辅配置文件,找到如下配置,删除前面的“#”即可启用。

Include conf/extra/httpd-vhosts.conf

配置虚拟主机

在conf\extra\httpd-vhosts.conf中添加虚拟主机。

<VirtualHost *:80>
    DocumentRoot "c:/web/apache2.4/htdocs"
    ServerName localhost
</VirtualHost>
<VirtualHost *:80>
    DocumentRoot "c:/web/www/laravel/public"
    ServerName laravel.test
</VirtualHost>
<Directory "c:/web/www">
    Options -indexes
    AllowOverride All
    Require local
</Directory>

测试域名

创建C:\web\www\laravel\public目录,在目录中编写一个内容为Laravel的index.html。

1.2.5安装Composer依赖管理工具

掌握Composer的安装方法,能够独立完成Composer的安装

Composer是PHP用来管理依赖(dependency)关系的工具。

只需在项目中声明依赖的外部工具库,Composer会自动安装这些依赖的库文件。

Windows下的安装方式:

1.使用安装程序进行安装

2.使用命令行安装

Composer的安装过程:

1.是否使用开发者模式(Developer mode)。若选中此项,则不提供卸载功能,推荐不选中。

2.选择PHP命令行程序。单击“Browse…”按钮浏览文件,选择C:\web\php7.2\php.exe即可。

3.更新php.ini。若当前php.ini不符合Composer的环境需求,安装程序会提示修改php.ini,并创建备份文件。若php.ini符合需求,则该步骤会自动跳过。

4.填写代理服务器。无需使用,留空即可。

Composer的安装结果:

在命令行窗口输入composer命令测试是否安装成功。

curl -sS https://getcomposer.org/installer | php

sudo mv composer.phar /usr/local/bin/composer

123456
 ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 1.10.9 2020-07-16 12:57:00
……(由于输出结果很长,此处省略)

1.2.6安装Visual Studio Code编辑器

掌握Visual Studio Code编辑器的安装方法,能够独立完成编辑器的安装

Visual Studio Code(简称VS Code)是微软公司开发的一款代码编辑器,具有免费、开源、轻量级、高性能、跨平台等特点。

安装编辑器:在官方网站获取软件的安装包。

设置主题:默认主题为黑色背景,若更换主题,单击左下角齿轮形状的Manage(管理)按钮,在弹出的菜单中选择Color Theme(颜色主题),选择Light+ (default light)。

设置语言:默认语言为英文,若切换为中文,单击左边栏的第5个图标按钮Extensions(扩展),然后输入关键词chinese即可找到中文语言扩展,单击Install按钮安装。

编写代码:单击“打开文件夹…”,选择C:\web\www\laravel目录,在左侧“资源管理器”中选择public\index.html进行编辑。

安装Laravel框架

1.3.1开启必要的扩展

了解学习Laravel框架需要开启哪些必要的扩展,能够说出这些扩展的作用

在安装Laravel框架前,需要确保在php.ini中打开必要的扩展:

extension=openssl
extension=pdo_mysql
extension=mbstring

运行Laravel框架还需要PHP内建扩展的支持,默认已经开启,使用php -m命令检查是否已经开启:

bcmath
ctype
json
tokenizer
xml

1.3.2使用Composer安装Laravel框架

掌握如何使用Composer安装Laravel框架,能够独立完成Laravel框架的安装

Laravel5.8框架的安装方式:

1.通过 Laravel安装器进行安装。

2.通过Composer安装。

Laravel框架安装命令:

composer create-project --prefer-dist laravel/laravel zsproject
5.8.* 
create-project表示创建项目
--prefer-dist表示以压缩的方式下载
laravel/laravel是框架在Composer的默认包仓库网站中的包名
laravel表示将框架下载到laravel目录中
5.8.*是版本号,表示安装5.8系列的最新版本

Linux 命令含义

pwd 查看当前目录

cd 切换目录

ls 查看当前目录中的文件

clear 清除屏幕内容

进入响应的文件目录

composer create-project --prefer-dist laravel/laravel kjp 5.8.*
1 项目文件   index.php     “这是苹果系统的第一个程序”
2 通过mamp  创建虚拟主机    xixi.com
3 打开浏览器  验证虚拟主机  xixi.com


1 项目文件  Composer  laravel       2 通过mamp  创建虚拟主机   kj.com      public 
3 打开浏览器  验证虚拟主机  kj.com

由于Composer的资源库packagist是国外网站,在国内访问速度会很慢,可以从“Packagist 中国全量镜像”获取缓存数据,具体命令如下:

composer config -g repo.packagist composer https://packagist.phpcomposer.com
composer create-project --prefer-dist laravel/laravel kjp 5.8.*

Laravel安装成功效果图:
访问Laravel框架:
更新Laravel框架命令:

composer update laravel/framework

上述命令执行后,会更新框架至最新版本。

更新Laravel框架命令:

composer update laravel/framework

上述命令执行后,会更新框架至最新版本。

Laravel框架的目录结构

了解Laravel框架的目录结构,能够说出每个目录的作用

Laravel框架的一级目录:

目录作用
app应用目录,保存项目中的控制器C 、模型M等
bootstrap保存框架启动的相关文件
config配置文件目录
database数据库迁移文件及数据填充文件
public应用入口文件index.php和前端资源文件(如CSS、JavaScript等)
resources存放视图文件、语言包和未编译的前端资源文件 V
routes存放应用中定义的所有路由
storage存放编译后的模板、Session文件、缓存文件、日志文件等
tests自动化测试文件
vendor存放通过Composer加载的依赖

Laravel框架常用的子目录和文件:

类型路径作用
目录app\Http存放HTTP请求相关的文件
目录app\Http\Controllers存放控制器文件
目录app\Http\Controllers\AuthAuth模块的控制器目录
文件app\Http\Controllers\Controller.php控制器的基类文件
目录app\Http\Middleware中间件目录
文件app\User.phpUser模型文件
文件bootstrap\autoload.php自动加载文件
文件config\app.php全局配置文件
文件config\auth.phpAuth模块的配置文件
文件config\database.php数据库配置文件
文件config\filesystem.php文件系统的配置文件
目录database\factories存放工厂模式的数据填充文件
类型路径作用
目录database\migrations存放数据库迁移文件
目录database\seeds存放数据填充器文件
目录resources\lang存放语言包文件
目录resources\views存放视图文件
文件routes\web.php定义路由的文件
目录storage\app存放用户上传的文件
目录storage\framework存放与框架自身相关的文件
目录storage\logs存放日志文件
文件public\index.php入口文件
文件.env环境变量配置文件
文件artisan脚手架文件
文件composer.jsonComposer依赖包配置文件

本章小节

本章先介绍了什么是Laravel框架;然后,为了确保读者的开发环境与本书一致,讲解了开发环境的搭建步骤,完成了Apache、PHP和MySQL的安装与配置、虚拟主机的配置,以及Composer依赖管理工具和Visual Studio Code编辑器的安装;最后,讲解了如何安装Laravel框架,并对Laravel框架的目录结构进行了简要介绍,为读者后续深入学习Laravel框架做了铺垫。

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐