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中的小知识总结的更多相关文章

  1. Django 2.0.7 使用小知识

    Django 2.0.3 使用小知识 运行环境: Python 3.6.4 Django 2.0.7 Django Admin中model显示为中文 定义model时,定义一个Meta对象,设置需要显 ...

  2. 关于tp5.0中对象数组转换普通数组使用助手函数collection而不是toArray

    tp5.0新版的模型查询返回默认对象,系统默认增加了toArray方法,许多开发者在all或select尝试使用toArray来转换为数组,在此希望开发者能理解对象的概念,尝试使用对象进行数据的使用, ...

  3. tp5.0中使用PHPexcel,以及Loader的一些问题

    在5.0中使用PHPexcel遇到一些问题,记录一下方便以后查看. 非使用PHPexcel的方法: 参考:http://blog.csdn.net/sinat_35861727/article/det ...

  4. TP5.0中多图上传文件名重复问题

    最近在做项目的时候出现了一个问题,这里记录一下: 问题: 使用TP5.0框架自带的文件上传方法后,发现多图上传可能会出现文件名重复的问题. 问题代码: 找到TP5框架上传文件命名方法,/thinkph ...

  5. TP5中的小知识

    在TP5中如果想用select 查询后,变成数组,用toArray()这个函数的话,必须在连接数据库中把 数据集返回类型变成 'resultset_type'=>'\think\Collecti ...

  6. Java中的小知识。

    package jicheng; public class Animal { //定义一个成员变量name. private String name; public String getName() ...

  7. Java中常量小知识

    常量分类:常量分为静态常量,非静态常量(全局常量),局部常量 静态常量:要么定义的时候赋初值,要么在静态代码块中赋值 非静态常量:要么在定义的时候赋初值,要么在代码块中赋值 局部常量:可以在定义时赋初 ...

  8. tp5.0中及其常用方法的一些函数方法(自己看)和技巧(不断添加中)

    1.目录结构 2.路由 3..控制器 4.模型写法 5.视图标签 6.数据库操作 7.表单验证 8.分页 --------------------------- 1.目录结构 project 应用部署 ...

  9. JSP页面中的小知识

    1.<%…%>和<%!…%>的区别? <%…%>用于在JSP页面中嵌入Java脚本,即代码块 <%!…%>用于在JSP页面中申明变量或方法,可以在该页面 ...

随机推荐

  1. hdu1004(c++)

    字符串统计问题,统计每个字符串的次数,输出出现次数最多的字符串 #include<iostream>#include<string>#include<algorithm& ...

  2. shoppingCart.js

    ylbtech-JavaScript-util: shoppingCart.js 购物车脚本 1.A,JS-效果图返回顶部   1.B,JS-Source Code(源代码)返回顶部 1.B.1,m. ...

  3. 编译spark源码及塔建源码阅读环境

    编译spark源码及塔建源码阅读环境 (一),编译spark源码 1,更换maven的下载镜像: <mirrors> <!-- 阿里云仓库 --> <mirror> ...

  4. Angularjs中的拦截器 (卧槽,好牛逼)

    $httpAngularJS 的 $http 服务允许我们通过发送 HTTP 请求方式与后台进行通信.在某些情况下,我们希望可以俘获所有的请求,并且在将其发送到服务端之前进行操作.还有一些情况是,我们 ...

  5. 系统封装 EasyBoot如何将WIN7安装版提取到光盘

    1 将WIN7光盘中的文件提取到Easyboot根目录,注意不要autorun.inf和setup.exe这两个文件.我们这里的Easyboot已经有了一些其他东西(XP的安装版文件,PE的文件等等, ...

  6. 【转】oracle建立本地数据库

    来到公司的这段时间,在项目的开发过程中一直连接的是远程的oracle数据库,现在开始轮到自己做毕业设计了,自己想采用Oracle数据库,就想建立本地的数据库. 当然了,首先是自己先装Oracle客户端 ...

  7. POJ 2029 Get Many Persimmon Trees (二维树状数组)

    Get Many Persimmon Trees Time Limit:1000MS    Memory Limit:30000KB    64bit IO Format:%I64d & %I ...

  8. Oracle 格式化中文时间

    SELECT TO_CHAR(SYSDATE, 'MM"月"DD"日"') A FROM dual; --注: 当格式字符串当中, 存在 自定义的字符信息的时候 ...

  9. PHP使用微软认知服务Face API

    下面主要介绍基于PHP语言,基于guzzle类库,调用微软最新推出的认知服务:人脸识别. 实验环境: IDE:Eclipse for PHP Developers Version: Neon.1 Re ...

  10. linxu 查看python解释器或者c/c++编译器的位置

    ubuntu环境下python相关ide的python解释器,它的默认位置在: usr/bin/python gcc和g++分别位于 usr/bin/gcc usr/bin/g++ 也可以用which ...