您的位置:首页 > 编程语言 > PHP开发

laravel与tp5、tp6之间的差异

2020-07-14 06:29 1506 查看

首先tp5是由tp3.2升级而来,但是tp5相对于tp3.2有较大的改变,几乎是颠覆性的,这里不讲tp3.2,主要说一下tp5和tp6。

  • 目录结构的异同 tp5核心框架是项目根目录thinkphp下 , tp6是vendor的topthink
  • 安装方式不同,tp6仅能通过composer方式安装
  • 类自动加载方式不同 tp6使用composer方式实现类自动加载, tp5 composer+自己实现了一套
  • tp6使用了php7严格模式
  • 组件的独立 ORM 模板引擎
  • 中间件改进 TP6开始使用了管道模式来实现中间件,比起之前版本的实现更加简洁,有序
  • 引入Filesystem

tp5和laravel之间的区别。

  • 提交数据的方式,Laravel在提交表单时需要在表单中加入@csrf或者{{ csrf_token() }}来防止跨域攻击,而TP不会。
  • 路由,Laravel必须先定义,再使用,路由文件为routes.php,TP在配置文件中开启路由后,路由格式是:‘路由表达式’ => ‘路由地址和参数’(使用路由的前提是URL支持phthinfo并且开启路由),路由可以使URL更符合SEO。
  • 中间件,Laravel的中间件,中间件就是HTTP请求到达之前经过的层,通过中间件我们可以验证用户是否登录等一些通用操作。
  • 操作数据库方式,都可以使用实例化(建立相对应的模型类)和DB:table(‘表名’)来操作数据库,使用原生查询时不太相同,Laravel使用Db::操作(‘原生sql’),TP使用Db::query(‘原生sql’)。
  • Laravel升级十分简易,而TP大版本的升级要重构代码。
  • Laravel框架里 if else判断语句和foreach语句 书写时必须以@if开头 以@endif结尾,如果没有则报语法错误,@foreach @endforeach同理。
    而TP框架则和PHP语法规则使用方式一致直接ifesle语句判断和foreach循环遍历
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: