TP5.0中的小知识总结
2017年6月26日15:01:23
1.input 获取输入数据 支持默认值和过滤;接收用户在前台输入的数据,可以是get方式也可以是post方式。
2.ThinkPHP5.0内置了分页实现,要给数据添加分页输出功能在5.0变得非常简单,可以直接在Db类查询的时候调用paginate方法:
分页功能:杂项>分页
3.递归方法实现无限极分类
//递归方法实现无限极分类
protected function getTree($data, $parent_id = 0, $level = 0, $field = 'acategory_id') {
static $tree = [];
foreach ($data as $row) {
if ($row['parent_id'] == $parent_id) {
$row['level'] = $level;
$tree[] = $row;
$this->getTree($data, $row[$field], $level + 1, $field);
}
}
return $tree;
}
注解:
1.无限极分类的方法必须写到基类控制器中,也就是子控制器继承的父类控制器当中,然后子类控制器可以直接用$this->getTree()调用
2.无限极分类中的各个参数都要明白是什么意思。是必须要掌握的。
4.后台要做那种搜索功能的,那些属性必须被包括在form表单中,action和method也是必须要设置的。这样才能去到对应的控制器中调用对应的方法。
5.添加文章之前需要进行判断,添加的时候需要设置form中的method为post方法,如果是post提交则直接调用save方法,在save方法中接收用户输入的数据,从而保存到
数据库中。
if ($this->request->isPost()) {
// 调用save方法
return $this->save();
}
6.$data = $this->request->post();注解:是TP5.0用来接收用户前端输入的数据,接收的是一个一维数组。
7.strip_tags()函数用来剥去字符串中的HTML标签。
8.mb_substr() — 获取部分字符串
9.html_entity_decode() 函数;把 HTML 实体转换为字符。
10.修改数据的时候也要进行判断,如果是修改就调用update方法,否则,显示对应的页面数据就行。
if ($this->request->isPost()) {
return $this->update();
}
1.$data['promoted'] = intval($data['promoted'] ?? 1);这句话的解释就是如果有就是$data['promoted'],否则就是1,三元运算符的新形式
2.删除对应的数据时,需要传对应的数据id值。
TP5.0中的小知识总结的更多相关文章
- Django 2.0.7 使用小知识
Django 2.0.3 使用小知识 运行环境: Python 3.6.4 Django 2.0.7 Django Admin中model显示为中文 定义model时,定义一个Meta对象,设置需要显 ...
- 关于tp5.0中对象数组转换普通数组使用助手函数collection而不是toArray
tp5.0新版的模型查询返回默认对象,系统默认增加了toArray方法,许多开发者在all或select尝试使用toArray来转换为数组,在此希望开发者能理解对象的概念,尝试使用对象进行数据的使用, ...
- tp5.0中使用PHPexcel,以及Loader的一些问题
在5.0中使用PHPexcel遇到一些问题,记录一下方便以后查看. 非使用PHPexcel的方法: 参考:http://blog.csdn.net/sinat_35861727/article/det ...
- TP5.0中多图上传文件名重复问题
最近在做项目的时候出现了一个问题,这里记录一下: 问题: 使用TP5.0框架自带的文件上传方法后,发现多图上传可能会出现文件名重复的问题. 问题代码: 找到TP5框架上传文件命名方法,/thinkph ...
- TP5中的小知识
在TP5中如果想用select 查询后,变成数组,用toArray()这个函数的话,必须在连接数据库中把 数据集返回类型变成 'resultset_type'=>'\think\Collecti ...
- Java中的小知识。
package jicheng; public class Animal { //定义一个成员变量name. private String name; public String getName() ...
- Java中常量小知识
常量分类:常量分为静态常量,非静态常量(全局常量),局部常量 静态常量:要么定义的时候赋初值,要么在静态代码块中赋值 非静态常量:要么在定义的时候赋初值,要么在代码块中赋值 局部常量:可以在定义时赋初 ...
- tp5.0中及其常用方法的一些函数方法(自己看)和技巧(不断添加中)
1.目录结构 2.路由 3..控制器 4.模型写法 5.视图标签 6.数据库操作 7.表单验证 8.分页 --------------------------- 1.目录结构 project 应用部署 ...
- JSP页面中的小知识
1.<%…%>和<%!…%>的区别? <%…%>用于在JSP页面中嵌入Java脚本,即代码块 <%!…%>用于在JSP页面中申明变量或方法,可以在该页面 ...
随机推荐
- 从let和const谈起
注册博客园账号也有好些年了,有事没事经常来逛逛,感觉博客园的同学们一直都很活跃,相比国内其他社区来讲,这里的技术氛围很浓,非常适合学习和交流,所以博主我也决定在这里驻扎了,在这里,博主希望能坚持写一些 ...
- [Android Traffic] 根据网络类型更改下载模式
转载自: http://blog.csdn.net/kesenhoo/article/details/7396321 Modifying your Download Patterns Based on ...
- iOS:UICollectionView纯自定义的布局:瀑布流布局
创建瀑布流有三种方式: 第一种方式:在一个ScrollView里面放入三个单元格高度一样的tableView,禁止tableView滚动,只需让tableView随着ScrollView滚动即可. ...
- 2017.3.31 spring mvc教程(六)转发、重定向、ajax请求
学习的博客:http://elf8848.iteye.com/blog/875830/ 我项目中所用的版本:4.2.0.博客的时间比较早,11年的,学习的是Spring3 MVC.不知道版本上有没有变 ...
- linux下rar包的解压方法
linux下rar包的解压方法 学习了:https://blog.csdn.net/yonggeit/article/details/72190246?utm_source=itdadao&u ...
- 关于Docker&kubernetes的一些问题
本文是我自己在学习docker以及kubernetes的过程中遇到的一些问题,以及同事在听过培训之后一些问题,事后我自己去网上找些资料以及问一些资深大牛,我在此做一个归纳总结,将这些问题的解答做一个分 ...
- RFS 理解
1.背景 网卡接收一个数据包的情况下,会经过三个阶段: - 网卡产生硬件中断通知CPU有包到达 - 通过软中断处理此数据包 - 在用户态程序处理此数据包 在SMP体系下,这三个阶段有可能在3个 ...
- 两种“新型”的javaweb后门(jspx和Java Logger)
利用这个可以突破st2下 强制jsp跳转login.jsp 利用jspx解决jsp后缀被限制拿shell - Hack Blog | 黑客博客http://www.hackblog.cn/post ...
- PHP实现查看邮件是否被阅读
<? //当你在发送邮件时,你或许很想知道该邮件是否被对方已阅读.这里有段非常有趣的代码片段能够显示对方IP地址记录阅读//的实际日期和时间. error_reporting(0); Hea ...
- 监听EditText字数
editContent.addTextChangedListener(new TextWatcher() { private CharSequence temp;private int editSta ...