ThinkPHP5
2017-02-24 11:17:37 0 举报
AI智能生成
ThinkPHP5是一个基于MVC设计模式的PHP开发框架,它提供了一套完整的解决方案,可以帮助开发者快速构建和部署Web应用程序。该框架具有简单易用、高效稳定、安全可靠等特点,支持多种数据库类型和模板引擎,可以满足不同业务场景的需求。 ThinkPHP5采用了模块化的设计思想,将系统分为多个模块,每个模块都有独立的职责和功能,方便开发者进行扩展和维护。同时,它还提供了丰富的内置功能和插件机制,可以轻松实现用户认证、权限管理、日志记录等常见功能。 总之,ThinkPHP5是一款非常优秀的PHP开发框架,它能够帮助开发者快速开发出高质量的Web应用程序,提高开发效率和代码质量。
作者其他创作
大纲/内容
PHP 的快速开发框架
MVC
数据库操作封装
对象方法
安装
通过各种途径下载 thinkPHP 包即可
composer
下载器
依赖项管理器
提供了loader类,完成模块自动加载
目录结构
application 程序代码
项目源码
模块
admin
home
...
database.php //数据库配置文件
config.php //网站配置文件
common.php //公共函数
public 入口及其他可直接访问的文件代码
index.php//入口
static
thinkphp //框架核心类
runtime //日志及缓存文件
vendor //第三方的东西
Image
Captcha
运行
必须通过public/index.php; 程序入口文件
请求路径格式:host/public/index.php/模块名/控制器名/方法名(action)
localhost/shop/public/index.php/home/homeindex/homelist
可以通过 URL 重写隐藏入口:index.php
内容
MVC
路由
ORM
助手函数
可扩展类库
TP 编写程序
模块 //admin,home
controller //控制器
作用:接收请求并处理的地方
命名空间与物理路径一致
常用函数
validate
assign
为模板赋值
fatch
渲染视图
跳转(jump)
redirect
success|error
进行了ajax判断
result
return view("模板名",参数数组)
return json(结果集)
model //业务模型,一般与表名对应
必须继承\think\Model 类
它是数据库中表的映射,即与表对应
实体层(model)
关联
hasMany
belongsTo
hasOne
belongsToManey
关联预加载
with(函数名)
获取器
get字段名Attr(字段值)
逻辑层(logic)
业务方法
注册
登录
验证层(validate)
模型验证规则
实例化:model('User','layerName')
view //模板
必须建立在 view/控制器目录下
必须与 action 同名
模板语句(标签)
volist
eq
if
for
{:url()}
{$vo.属性}
{$vo.属性|函数}
config.php
数据库访问
Db 类
Db::table("表名")
where()
select()
Db::name("去前缀表名");
db("");//助手函数
每次都会打开关闭数据库连接
模型的使用
$m = new \app\admin\model\类名();
$m = model("类名");
\app\admin\model\类名::方法()
模板
标签
volist //循环
比较
eq //相等
neq
lt
switch //多路分支
继承
被继承的模板
被继承的模板可以有多个block,如果子模板中重写了同名的block,则父模板中的block中的内容会被取代。
继承模板
子模板按需要重写父容器的同名block,以输出自己的内容
layout
layout文件
配置:
layout_on =>true;
return view();
自定义标签
继承自tagLib标签类库
定义标签列表格式:
控制器
控制器可以选择是否继承Controller类
控制器初始化
_initialize __construct 控制器验证
$this->validate()
控制器接收请求
public function myAction(Request $request)
参数赋值
为视图(模板)赋值
$this->assign("变量名",$变量)
返回视图
return view('模板名称',参数数组);
返回json
return json(数据)
控制器分层
控制器的生命周期
空控制器
路由找不到匹配的控制器时会尝试调用空控制器
模型
业务模型
模型分层
validate
定义
rule
message
scene
使用
1、创建对象调用 check 方法
2、在控制器 $res = $this->validate("验证器名称.场景")
3、模型验证 $model->validate("验证器名称.场景")->save($data);
自动完成
getXXXAttr
__get
setXXXAttr
__set
关联查询
一对多
hasMany
多对一、一对一
belongsTo
多对多
关联预载入
工具类
文件操作
file函数
上传
部署时,注意需要写入权限
图片处理
Image
composer require topthink/think-image
验证码
邮件发送
/tp-mailer
分页
路由
自定义路由
restFul接口开发
redis
windows
安装及运行
扩展配置
linux
安装及运行
扩展配置
MongoDB
收藏
收藏
0 条评论
下一页