浅谈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 相关文章推荐
让你的网站首页自动选择语言转跳
Dec 06 PHP
php 从数据库提取二进制图片的处理代码
Sep 09 PHP
解析左右值无限分类的实现算法
Jun 20 PHP
解析crontab php自动运行的方法
Jun 24 PHP
基于php中使用excel的简单介绍
Aug 02 PHP
php输出xml必须header的解决方法
Oct 17 PHP
php单态设计模式(单例模式)实例
Nov 18 PHP
两种php去除二维数组的重复项方法
Nov 04 PHP
Yii 2.0中场景的使用教程
Jun 02 PHP
php post json参数的传递和接收处理方法
May 31 PHP
php实现微信发红包功能
Jul 13 PHP
WordPress免插件实现面包屑导航的示例代码
Aug 20 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转换文件夹下所有文件编码的实现代码
2013/06/06 PHP
php中opendir函数用法实例
2014/11/15 PHP
Symfony生成二维码的方法
2016/02/04 PHP
javascript 循环读取JSON数据的代码
2010/07/17 Javascript
jQuery中;function($,undefined) 前面的分号的用处
2014/12/17 Javascript
jQuery实现判断控件是否显示的方法
2017/01/11 Javascript
Vue父组件调用子组件事件方法
2018/02/23 Javascript
微信小程序实现分享朋友圈的图片功能示例
2019/01/18 Javascript
解决layui laydate 时间控件一闪而过的问题
2019/09/28 Javascript
Vue中fragment.js使用方法小结
2020/02/17 Javascript
[02:22]2018DOTA2亚洲邀请赛VG赛前采访
2018/04/03 DOTA
[42:34]VP vs VG 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
用Python将IP地址在整型和字符串之间轻松转换
2017/03/22 Python
Python使用jsonpath-rw模块处理Json对象操作示例
2018/07/31 Python
django的csrf实现过程详解
2019/07/26 Python
OpenCV模板匹配matchTemplate的实现
2019/10/18 Python
基于h5py的使用及数据封装代码
2019/12/26 Python
python 图像判断,清晰度(明暗),彩色与黑白实例
2020/06/04 Python
Python3爬虫里关于Splash负载均衡配置详解
2020/07/10 Python
Python抖音快手代码舞(字符舞)的实现方法
2021/02/07 Python
Python如何telnet到网络设备
2021/02/18 Python
通过canvas转换颜色为RGBA格式及性能问题的解决
2019/11/22 HTML / CSS
Canvas获取视频第一帧缩略图的实现
2020/11/11 HTML / CSS
如何写一个Java类既可以用作applet也可以用作java应用
2016/01/18 面试题
大学生求职简历的自我评价范文
2013/10/12 职场文书
大学生活学习的自我评价
2013/12/03 职场文书
财会自我鉴定范文
2013/12/27 职场文书
质检部职责
2013/12/28 职场文书
顶岗实习接收函
2014/01/09 职场文书
三个儿子教学反思
2014/02/03 职场文书
党员大会主持词
2014/04/02 职场文书
企业演讲稿范文大全
2014/05/20 职场文书
学校门卫岗位职责范本
2014/06/30 职场文书
情况说明书怎么写
2015/10/08 职场文书
一文读懂go中semaphore(信号量)源码
2021/04/03 Golang
VMware虚拟机安装 Windows Server 2022的详细图文教程
2022/09/23 Servers