php框架使用之laravel框架(结构篇)二

1、目录结构

① app目录:项目的核心目录,主要用于存放核心代码,也包括控制器、模型以及路由。

控制器存放位置:

模型存放位置:

在实际项目开发中,建议把模型存放在app/Http/Models自定义文件夹中。

② config目录 :项目的配置目录,主要存放配置文件,如数据库配置

③ public项目公用目录,主要用于存放images/css/js等资源文件

④ resources资源目录,主要用于存放视图文件

⑤ vendor扩展目录,扩展插件主要存放在此目录下

⑥ .env环境配置文件,主要用于配置项目信息如数据库信息、缓存信息等等

⑦ artisan脚手架,主要用于自动生成代码的,非常好用

⑧ composer.json,composer依赖包配置文件

⑨ 项目入口文件index.php

2、Laravel框架中的控制器

① 什么是控制器

MVC的核心,主要用于接收用户请求,处理业务逻辑。

② 控制器的存放目录

③ 控制器命名规则,基本语法:

控制器名称:Index,记住首字母要大写

关键词:Controller

定义Index控制器,其命名为:IndexController

④ 使用脚手架生成IndexController控制器

在DOS窗口中,切换到gcwapp项目目录,如下图所示:

使用php  artisan   make:controller   控制器名称生成自定义控制器,如下图所示:

创建成功后,如下图所示:

在IndexController控制器中,定义index方法,访问后如下图所示:

运行结果:

导致以上问题的主要原因在于虚拟主机的配置文件设置问题,找到upupw的虚拟主机配置文件,删除以下代码即可:

配置完成后,记得重启Apache,否则以上设置无法生效。

3、Laravel框架中的路由

在ThinkPHP框架中,当我们在URL地址中,传递m、c、a三个参数时,系统会自动跳转到指定模型中指定控制器的指定方法,这些处理过程都是由框架自动完成的。但是,在Laravel框架中,其并没有指定固定参数,其路由必须要手工进行配置。

① 路由配置文件

② 在routes.php配置文件中配置路由

 

③ 自定义路由的基本语法

//get请求

Route::get(‘/’,function(){

   return view(‘welcome’);

});

//post请求

Route::post(‘goods/store’,’GoodsController@store’);

//controller请求

Route::controller(‘index’,’IndexController’);

特别注意:使用controller请求时,其方法如果是get请求,必须加前缀get其方法如果是post请求,必须加前缀post

//resource请求                       

Route::resource('article','ArticleController');

特别注意:使用resource请求时,其内部的方法都是固定的,如下图所示:

4、Laravel框架中的DB类

① 设计数据库

数据库名称:gcwapp

article数据表:gcw_article

数据表字段:

字段名称

字段类型

字段长度

默认值

字段属性

是否为空

备注

id

mediumint

 

 

primaryKey

not null

编号

title

varchar

40

 

 

not null

标题

description

varchar

255

 

 

 

描述

content

text

 

 

 

 

内容

author

varchar

20

 

 

 

作者

addtime

int

 

 

 

 

添加时间

建议阅读phpcms v9的数据字典:

http://www.phpcms.cn/doc/PHPCMSDocumentor/mysql_data_structure.html

创建数据库与数据表:

② 在Laravel中配置mysql数据库信息(牵连.env与config/database.php)

首先配置.env文件:

打开config/database.php,配置信息如下:

③ 创建Article控制器,如下图所示:

④ 在routes.php中设置url路由:

⑤ 在Article控制器中定义以上四个方法

⑥ 引入DB类,实现CURD操作

建议阅读DB类详解:http://www.jb51.net/article/54713.htm

实现add添加功能:

insert方法,返回布尔类型的值,true代表添加成功,false代表添加失败。

实现delete删除功能:

delete方法,返回受影响的行数。

实现edit更新功能:

update方法,返回受影响的行数。

实现index查询功能,基本语法:

查询一条记录:first()方法

查询多条记录:get()方法

示例代码:

示例代码:

实现数据统计:

实现offset与limit:

5、Laravel框架中的模型

① 什么是模型

所谓的模型就是企业数据逻辑,负责与数据库进行交互,实现CURD等功能。

② 模型的存放位置

默认情况下:存放在Laravel框架的app目录下

但是,在实际项目开发中,建议把模型放置于app/Http/Models(手工创建)目录下

③ 模型的命名规则

数据表名称+首字母大写

④ 使用php脚手架生成自定义模型

运行结果:

④ 更改Model模型的存放位置

复制生成的自定义模型到app/Http/Models目录,如下图所示:

复制完成后,必须要更改命名空间的位置(非常重要)

⑤ 使用Laravel中的模型,定义关联表,定义表主键,定义时间戳,定义白名单

⑥ 在控制器中使用模型操作数据

获取所有数据:

获取指定id的数据:

使用AR模式实现添加与更新功能:

使用delete方法实现删除功能:

6、Laravel框架中的视图

① 什么是视图

所谓的视图,就是我们常见的用户界面,主要用于数据的显示

② 定义位置

③ 视图的命名规则

welcome.blade.php 欢迎视图

welcome视图名称

.blade.php 视图后缀

④ 在控制器中调用视图

⑤ 定义welcome.blade.php视图

运行结果:

php框架使用之laravel框架(实战篇)三

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值