zoukankan      html  css  js  c++  java
  • ThinkPHP5 与 ThinkPHP3.* 之间的使用差异

    1、过去的单字母函数已完全被替换掉,如下:

    S=>cache,C=>config,M/D=>model,U=>url,I=>input,E=>exception,L=>lang,A=>controller,R=>action

    2、模版渲染:$this->display() => return view()/return $this->fetch();

    3、在model中调用自身model:$this => Db::table($this->table)

    4、在新建控制器与模型时的命名:

      ①控制器去掉后缀controller:UserController => User

      ②模型去掉后缀model:UserModel => User

    5、url访问:

      如果控制器名使用驼峰法,访问时需要将各字母之间用下划线链接后进行访问。

      eg:控制器名为AddUser,访问是用add_user来进行访问

    6、在TP5中支持配置二级参数(即二维数组),配置文件中,二级配置参数读取:

      ①Config::get('user.type');

      ②config('user.type');

    7、模板中支持三元运算符的运算:{$info.status ? $info.msg : $info.error}还支持这种写法:{$varname.aa ?? 'xxx'}或{$varname.aa ?: 'xxx'}

    8、TP5内置标签:

      系统内置的标签中,volist、switch、if、elseif、else、foreach、compare(包括所有的比较标签)、(not)present、(not)empty、(not)defined等

    9、TP5数据验证:

      $validate = new Validate(['name' => 'require|max:25','email' => 'email']);

      $data = ['name' => 'thinkphp','email' => 'thinkphp@qq.com'];

      if(!validate->check($data)){

        debug::dump($validate->getError());

      }

      注:使用助手函数实例化验证器——$validate = validate('User');

    10、TP5实现了内置分页,使用如下:

      查询状态为1的用户数据,且每页显示10条数据

      $list = model('User')->where('status',1)->paginate(10);

       $page = $this->render();

       $this->assign('_list',$list);

       $this->assign('_page',$page);

       return $this->fetch();

      模板文件中分页输出代码如下:

      <div>{$_page}</div>

     

  • 相关阅读:
    Java调度实现
    关于《报表》的实际运用案例
    mybaits错误解决:There is no getter for property named 'parentId ' in class 'java.lang.String'
    Java Eclipse进行断点调试
    切割时间工具类
    JavaWeb开发技术基础概念回顾篇
    解决无线网络连接出现黄色感叹号---win10
    登录界面Demo
    MD5加密Demo
    java.lang.NullPointerException&com.cb.action.LoginAction.execute(LoginAction.java:48)
  • 原文地址:https://www.cnblogs.com/zhaohui123/p/7298363.html
Copyright © 2011-2022 走看看