第1讲-Laravel介绍

1.1 什么是Laravel

laravel是目前一个比较主流的框架,现在很多互联网的公司都在使用该框架。该框架的前身是symfony框架

 

Laravel的定位就是做一个简洁使用程序员的框架。为web艺术而生。

 

Laravel学习参考:

官网:https://www.laravel.com/

地址:http://laravelacademy.org/

地址:http://www.golaravel.com/

Laravel的特点:

1. 单一入口:所有的请求必须从单入口开始:主要是关于管理【统一的参数过滤】。

2. MVC的思想【分层的思想:主要是为了协同开发---实现后期的维护方便 框架本身写好了很多基础性的代码,不再需要重复造轮子】

3. ORM操作数据库【Obeject Relationship Model的简写】

一个模型对象对应数据库里面的一张表,对象的属性就是表的字段名,对象的方法执行curd操作。类似TP中的AR模式

例如:$userModel->username属性===对应=====it_user表username字段

 

特别注意

Laravel是一个重路由框架,即所有的功能都是由路由发起。

路由:建立HTTP请求(URL地址)与控制器中方法的联系

 

Laravel框架

  • 必须有路由
  • 可以没有控制器、模型、视图

 

1.2 为什么学习Laravel

① 移动互联网的兴起

目前移动互联网非常的火,基本都是前后端分离,前后端需要建立数据的联系,这个时候一般都是通过API接口完成的,API接口就是一个URL地址请求,也就是一个路由!

因为Laravel在接口调用里面有其独特的优势。在执行效率与编码效率方面都有优势,因此被很多公司作为目前开发的首选框架。CI框架,TP框架等很多国内框架都在借鉴Laravel的设计思想。

② 有益于大家找工作

         目前很多公司要求至少会1~2个框架的使用。学习Laravel有利于大家找工作。

③ 培养学习新框架的能力

         有些公司是使用的自定义框架,学习Laravel可以培养大家学习新框架的能力,更快的适应公司的要求

 

1.3 如何学习Laravel

         不论学习什么框架,都需要从下面几个方面着手

  • 环境配置—第2讲
  • 目录结构—第3讲
  • 路由—第4讲
  • 控制器—第5讲
  • 视图-第6讲
  • 配置—第7讲
  • 模型(CURD)第7讲
  • 调试

 

第2讲-搭建开发环境

2.1 Laravel版本选择

目前,最新版本的Laravel是5.4。推荐大家使用Laravel5.1版本。因为Laravel5.1是目前的LTS版本。目前大部分公司会选用5.1。同时学会5.1版本后,学习5.5版本也比较轻松。

什么是LTS(Long Term Support)版本:

 

 

2.2 安装phpStudy

Laravel框架有运行对环境是有严格要求的。

 

在Laravel里有很多::class的语法,是在php5.5以后支持的

在Laravel里定义数组的写法: [‘name’ => ‘xiaoming’,  ‘age’ => 23] 也是在php5.4之后支持的

 

 

由于Laravel会使用Openssl扩展库、PDO扩展库的类,所以确保开启这些扩展

由于Laravel会使用token(令牌)技术, 所以确保tokenizse开启

 

在Windows下建议使用集成开发环境phpstudy这个产品,目前还支持php7,并且可以非常方便的做版本切换。

Step1. 运行phpstudy.exe

 

Step2. 选择“是”

 

Step3. 切换版本

 

Step4. 查看phpinfo

 

Step5. 修改php.ini配置

 

配置文件目录如下:

 

开启openssl扩展

 

 

 

Step6. 重启Apache服务

 

Step7. 检查php配置

 

 

 

2.3 Apache配置

Step1. 开启Rewrite模块

PhpStudy默认开启, 不用修改

 

Step2. 配置虚拟主机

 

编写index.php测试环境

访问设置的域名: “local.laravel.com”

 

2.4 设置环境变量

Q: 为什么需要设置环境变量?

A: 需要在命令行下执行Laravel提供的artisan脚本

 

Q: artisan脚本是什么?

A: artisan脚本是Laravel提供的一个自动生成工具,可以自动生成控制器文件、模型文件、中间件文件等

 

Win7下配置

“我的电脑”-右键-“属性”

 

特别注意:

如果之前有配置环境变量, 需要将之前配置的环境变量删除

测试

 

如果不一致, 依然是之前配置的php版本, 执行set命令,让环境变量生效

 

 

2.5 Laravel的安装

Laravel两种安装方式

  • Composer安装

 

Q. 什么是Composer?

A. Composer是php的类库管理器(上传类、验证码类....),可以帮我们自动去互联网下载开发过程中所需要的类库文件和Linux下包管理器yum比较类似。可以理解成360软件管家 QQ软件管家

由于Composer安装需要FQ,通过Composer方式安装的速度也比较慢,不适合在课堂上演示,咱们采用源码包安装:

 

  • 源码包安装

Step1. 下载一键安装包

 

Step2. 解压

解压到配置好的虚拟主机

 

Step3. 测试

访问local.laravel.com发现不能正常访问

 

[原因]

由于Laravel的入口文件在public目录下. 因此, 虚拟主机的目录要配置到public目录

[解决]

修改虚拟主机配置

 

 

 

 


第3讲-目录结构

Xmind目录结构图

 


第4讲-路由

4.1 路由的介绍

4.1.1 什么是路由

简单的说就是将用户的请求转发给相应的php程序去处理

4.1.2 路由的作用

路由的作用就是建立url请求和php程序之间的映射,需要注意laravel框架里面路由是必须的【laravel可以不写控制器、也不可以写模型、也可以不写视图】,并且每个路由规则是唯一性的。laravel是一个重路由的框架。

4.1.3 Http请求的种类

Http请求类型get、put、post、patch、delete、tarce、options...等【http请求分7种,但是并不是所有的请求web服务器都支持】,一般使用的get或者post居多。

4.1.4 参考手册

 

4.2 路由的使用

4.2.1 基本路由

 

4.2.2 带必选参数的路由

 

 

如果路由没有写参数,则会报错

 

4.2.3 带可选参数的路由

 

 

使用可选参数路由时, 需要给默认值, 否则会出错

 

 

4.2.4 参数的正则约束

 

使用连续操作:where()

  • 单参数: 传递 参数名, 正则表达式
  • 多参数: 传递 关联数组

 

 

 

 

4.2.5 路由到控制器的方法

 

第5讲-控制器

5.1 手写控制器

Step1. 新建文件

在Http/Controllers目录下新建一个文件TestController.php

 

Step2. 编写内容

 

Step3. 优化

 

5.2 自动生成

使用artisan脚本生成控制器

Step1. 进入artisan脚本目录

 

Step2. 执行命令

php artisan make:controller 目录\控制器

 

生成如下文件

 

可以使用参数 --plain: 生成简洁版本

php artisan make:controller Test\UserController --plain

 

 

 

5.3 编写路由

 

第6讲-视图

6.1 加载视图

Larvael使用blade模板引擎, 所有视图文件存放在resources\views目录下

模板使用.blade.php文件命名

 

6.2 加载带目录的视图

 

6.3 视图传参

Step1. 使用View的第二个参数

         第二个参数传递一个关联数组,

关联数组的Key为模板变量, value为php数据

 

 

Step2. 编写模板

 

 

6.4 模板标签语法

使用php原生语法访问变量

 

使用php函数

 

使用遍历

 

 

第7讲-中间件

7.1 什么是中间件

顾名思义: 处于Http请求与响应中间的部分

 

中间件所在位置:

         在Http请求之后, 在控制器处理之前.

7.2 中间件的作用

 

作用:

         数据过滤

         权限验证

7.3 中间件的使用

Step1 生成中间件

         通过 artisan 脚本生成中间件

php artisan make:middleware 中间件

 

 

Step2 编写中间件

 

Step3 注册中间件

 

Step4 编写路由

 

Step5 测试

 

 

 

第8讲-Http请求

8.1 依赖注入(设计模式)

Q: 什么叫依赖?

A: 如果一个类的实现需要另一个类的支持, 就叫做一个类依赖另一个类

例如:

人要开车, 就说人类依赖汽车类

汽车要能跑, 需要有轮子. 就说汽车依赖轮子

        

Q:什么叫注入?

A:一般是在类的构造方法里传入另一个类的对象做为参数

 

Q:什么叫容器?

A:容器一般包含两个方法:bind和make

Bind:建立类与一个闭包的联系

Make:产生一个对象,并解决依赖关系

 

8.2 Http请求的简单案例

编写User/add路由

 

1. 使用依赖注入Request对象

 

2. 使用Request的all()方法

 

 

3. 使用Request的input()方法

 

 

4. 使用Request的method()方法

 

 

 

第9讲-Http响应

9.1 什么是Http响应

Http响应就是服务器返回给浏览器的数据

包括三个方面

  • 响应行
  • 响应头
  • 响应体(数据)

 

9.2 Http响应的简单案例

1. 设置响应头

用法

 

 

 

 

Response里可以写空字符串

 

什么都不写会报错!

 

2. 设置cookie

用法

 

编写代码

 

 

获取cookie

 

也是支持中文的

 

3. Ajax返回JSON数据(重点)

用法

 

Step1. 编写/ajax路由

 

Step2. 编写ajax模板

 

 

Step3. 通过ajax发送get请求

 

Step4. 测试

 

posted on 2017-07-31 18:41  able-woman  阅读(441)  评论(0编辑  收藏  举报