浅谈laravel框架与thinkPHP框架的区别


Posted in PHP onOctober 23, 2019

主要区别:(thinkPHP更适合国人的编码习惯)

1、渲染模版方式的不同:

在Laravel框架里,使用return view()来渲染模版;

而ThinkPHP里则使用了$this->display()的方式渲染模版;

2、在Laravel框架里,由于其考虑到了跨站请求伪造, 所以如果使用form表单以post方式进行传值时,如果不再form表单中加入{{csrf_field()}}则会报出TokenMethodnotfound的语法错误;

而TP框架则需要自己手动完成防止跨站攻击的代码;

3、Laravel是一个重路由的框架(5.4),所有的功能都是由路由发起的,哪怕没有控制器方法,只要写了路由就能够访问,thinkPHP(3.2),必须要有控制器方法才能正常访问;

4、laravel具有强大的社区化扩展,(composer扩展自动加载);

5、laravel具有强大的Blade模版引擎;

6、中间件,Laravel特点,可以实现访问前后的处理,例如请求和返回,权限认证等;

7、条件判断语句书写方式的差异:

Laravel框架里 if else判断语句和foreach语句 书写时必须以@if开头 以@endif结尾,如果没有则报语法错误,@foreach @endforeach同理;

而TP框架则和PHP语法规则使用方式一致直接ifesle语句判断和foreach循环遍历

Laravel里内置了大量的方法供开发者使用,在实际应用中更接近于"让对象完成一切"的开发思想,比如在后台表单验证的时候,Laravel内置了大量的验证方法,例如对用户名的验证:我们使用可以validate方法里'username'=>'required'(不能为空)|alpha_dash(必须数字字母下划线)|between:6,18(在多少位数之间);还内置了例如email;same:字段名;diff:字段名等大量的方法极大的提高了开发速度;

加密方式 在TP框架中 我们对用户名密码进行加密时使用md5();的方式进行加密,但md5的缺点在于其可以逆向破解,而且在同等规则下同样的密码md5加密出的字符串是有可能出现相同的,这就降低其安全性;

但在Laravel框架中内置了"哈希"Hash加密单向加密方法,且同样的参数加密出的字符串是绝对不会出现相同的情况 这就提高了安全性;

在实际开发中我们常常遇到这样的问题,就是开发地点不固定,这就造成了我们需要频繁的更改数据库配置,给开发工作造成了麻烦,TP依然没有避免这个"灾难";在laravel框架中,.env环境文件的出现解决了这个麻烦,我们只需要在不同的工作地点配置好.env文件就不必再进行配置,因为无论是git还是svn " .env是不会随着文件一起提交到服务器的";

以上这篇浅谈laravel框架与thinkPHP框架的区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
强烈推荐:php.ini中文版(1)
Oct 09 PHP
人尽可用的Windows技巧小贴士之下篇
Mar 22 PHP
session在PHP大型web应用中的使用
Jun 25 PHP
PHP的加密方式及原理
Jun 14 PHP
PHP连接sql server 2005环境配置及问题解决
Aug 08 PHP
PHP制作3D扇形统计图以及对图片进行缩放操作实例
Oct 23 PHP
PHP获取数组的键与值方法小结
Jun 13 PHP
php里array_work用法实例分析
Jul 13 PHP
php实现过滤字符串中的中文和数字实例
Jul 29 PHP
PHP实现批量清空删除指定文件夹所有内容的方法
May 30 PHP
PHP数组实际占用内存大小原理解析
Dec 11 PHP
详解Go与PHP的语法对比
May 29 PHP
Laravel 解决composer相关操作提示php相关异常的问题
Oct 23 #PHP
基于laravel缓冲cache的用法详解
Oct 23 #PHP
PHP实现简单登录界面
Oct 23 #PHP
laravel框架与其他框架的详细对比
Oct 23 #PHP
laravel清除视图缓存的代码
Oct 23 #PHP
PHP实现简单用户登录界面
Oct 23 #PHP
laravel Task Scheduling(任务调度)在windows下的使用详解
Oct 22 #PHP
You might like
php求数组全排列,元素所有组合的方法
2016/05/05 PHP
php生成0~1随机小数的方法(必看)
2017/04/05 PHP
php的优点总结 php有哪些优点
2019/07/19 PHP
获取数组中最大最小值方法js代码(自写)
2013/08/12 Javascript
js如何获取object类型里的键值
2014/02/18 Javascript
javascript实现密码验证
2015/11/10 Javascript
基于javascript实现彩票随机数生成(升级版)
2020/04/17 Javascript
基于javascript实现随机颜色变化效果
2016/01/14 Javascript
js实现有过渡渐变效果的图片轮播相册(兼容IE,ff)
2016/01/19 Javascript
JS判断是否为JSON对象及是否存在某字段的方法(推荐)
2016/11/29 Javascript
jQuery File Upload文件上传插件使用详解
2016/12/06 Javascript
Nodejs基于LRU算法实现的缓存处理操作示例
2017/03/17 NodeJs
Javarscript中模块(module)、加载(load)与捆绑(bundle)详解
2017/05/28 Javascript
React根据宽度自适应高度的示例代码
2017/10/11 Javascript
Element-ui之ElScrollBar组件滚动条的使用方法
2018/09/14 Javascript
在 Vue.js中优雅地使用全局事件的方法
2019/02/01 Javascript
node.js实现上传文件功能
2019/07/15 Javascript
使用typescript构建Vue应用的实现
2019/08/26 Javascript
layer 刷新某个页面的实现方法
2019/09/05 Javascript
layui button 按钮弹出提示窗口,确定才进行的方法
2019/09/06 Javascript
在Echarts图中给坐标轴加一个标识线markLine
2020/07/20 Javascript
[01:03:56]Mineski vs TNC 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
Python单元测试框架unittest使用方法讲解
2015/04/13 Python
Python爬虫爬取美剧网站的实现代码
2016/09/03 Python
使用TensorFlow实现SVM
2018/09/06 Python
DES加密解密算法之python实现版(图文并茂)
2018/12/06 Python
python分布式计算dispy的使用详解
2019/12/22 Python
python爬虫用mongodb的理由
2020/07/28 Python
HTML5 Canvas实现放大镜效果示例
2020/03/25 HTML / CSS
美国智能家居专家:tink
2019/06/04 全球购物
马来西亚网上花店:FlowerAdvisor马来西亚
2020/01/03 全球购物
哈曼俄罗斯官方网上商店:Harman.club
2020/07/24 全球购物
上海某公司.net方向笔试题
2014/09/14 面试题
大学毕业感言
2014/01/10 职场文书
2014年母亲节寄语
2014/05/07 职场文书
七年级上册语文教学计划
2015/01/22 职场文书