码迷,mamicode.com
首页 > 其他好文 > 详细

tp6常用功能整理(属于个人日记,本人也是刚接触)

时间:2020-12-07 12:32:38      阅读:6      评论:0      收藏:0      [点我收藏+]

标签:二维数组   menu   root   获取   访问   ali   div   indent   error   

在码云或者git下载案例发现没有vendor无法运行

composer install --ignore-platform-reqs

或者

composer update --ignore-platform-reqs

 

Tp6使用

1、下载tp6

composer create-project topthink/think tp

 

2、设置多应用模式

tp6默认是单应用访问默认进入app/controller里的方法,如果需要做多应用开发(例:http://***.com/admin、http://***.com/index)需要开启多应用模式

composer requiretopthink/think-multi-app

 

php think build 应用名称(例:index或者admin)

 

3、模板渲染

tp3: $this->display();

tp5: return $this->fetch();

tp6: return View::fetch(‘index‘);

tp6默认缺少很多依赖包的,需要下载

composer require topthink/think-view

控制器引入

use think\facade\View;

4、模板跳转重定向

技术图片

composer require liliuwei/thinkphp-jump

控制器引入

头部引入:use \liliuwei\think\Jump;

类内引入:use Jump;

 

如果报错:

查看app/config/jump.php是否有设置:

‘dispatch_success_tmpl‘ => app()->getRootPath().‘/vendor/qeq66/think-jump/template/jump.html‘,

‘dispatch_error_tmpl‘ => app()->getRootPath().‘/vendor/qeq66/think-jump/template/jump.html‘

5、获取表单数据

控制器引入

use think\facade\Request;

$code = Request::param(‘code‘);

或者

$code = input("code");

6、数字验证码

composer require topthink/think-captcha

在应用app目录下找到全局中间件middleware.php文件,把下面注释的代码\think\middleware\SessionInit::class开启

7、上传图片处理图片

composer require topthink/think-image

8、mysql select查询

技术图片

从tp5过渡过来的,默认select查询是返回二维数组,tp6返回数据集,虽然官方说和数组操作基本无区别

但是有些时候还是数组好用 例如$arr[$k][0] = "test"这种间接修改,在默认返回的数据集中,是报错的,但是数组是可以这样操作的

修改tp6目录下的/vendor/topthink/think-orm/src/db的BaseQuery.php

技术图片

修改示例如图所示,将图中画红框的位置删除,并且在

$resultSet = $this->connection->select($this);

下面增加一行

return $resultSet;

9、分页

$list = db::name(‘admin_menu‘)->where($where)->paginate([

‘list_rows‘=> 10,

‘query‘ => request()->param(),

]);

  1. 使用paginate方法获取分页数据,查询集合无法新增的下标值

  2. 查询条件需要增加 ‘query‘ => request()->param(),

解决写法:

php端:

$list = db::name(‘admin_menu‘)->where($where)->paginate([

‘list_rows‘=> 10,

‘query‘ => request()->param(),

]);

$new_arr = array();

foreach($list as $k=>$v){

$v[$k][‘erji_menu‘] = “案例”;

$new_arr[] = $v;

}

// 获取分页显示

$page = $list->render();

// 模板变量赋值

View::assign(‘list‘, $new_arr);

View::assign(‘page‘, $page);

html端

{$page|raw}

分页引用class修改

tp6\vendor\topthink\think-orm\src\paginator\driver\Bootstrap.php

tp6常用功能整理(属于个人日记,本人也是刚接触)

标签:二维数组   menu   root   获取   访问   ali   div   indent   error   

原文地址:https://www.cnblogs.com/QQ1047911037/p/14073380.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!