浅谈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字符串截取中文截取2,单字节截取模式
Dec 10 PHP
phpmyadmin 访问被拒绝的真实原因
Jun 15 PHP
php结合表单实现一些简单功能的例子
Jun 04 PHP
PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解
Apr 26 PHP
Linux中用PHP判断程序运行状态的2个方法
May 04 PHP
又一个PHP实现的冒泡排序算法分享
Aug 21 PHP
分享一个Laravel好用的Cache宏
Mar 02 PHP
php使用指定编码导出mysql数据到csv文件的方法
Mar 31 PHP
PHP微信PC二维码登陆的实现思路
Jul 13 PHP
PHP使用Curl实现模拟登录及抓取数据功能示例
Apr 27 PHP
PHP session垃圾回收机制实例分析
Jun 28 PHP
php探针使用原理和技巧讲解
Sep 17 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
第十三节--对象串行化
2006/11/16 PHP
PHP与MongoDB简介|安全|M+PHP应用实例详解
2013/06/17 PHP
简单的php中文转拼音的实现代码
2014/02/11 PHP
PHP判断网络文件是否存在的方法
2015/03/12 PHP
Zend Framework教程之动作的基类Zend_Controller_Action详解
2016/03/07 PHP
实例讲解YII2中多表关联的使用方法
2017/07/21 PHP
js设置组合快捷键/tabindex功能的方法
2013/11/21 Javascript
js 通过html()及text()方法获取并设置p标签的显示值
2014/05/14 Javascript
用js代码和插件实现wordpress雪花飘落效果的四种方法
2014/12/15 Javascript
Js+php实现异步拖拽上传文件
2015/06/23 Javascript
jQuery实现简易的天天爱消除小游戏
2015/10/16 Javascript
js实现的奥运倒计时时钟效果代码
2015/12/09 Javascript
JS声明式函数与赋值式函数实例分析
2016/12/13 Javascript
JS获取鼠标坐标并且根据鼠标位置不同弹出不同内容
2017/06/12 Javascript
JavaScript中三个等号和两个等号你了解多少
2017/07/04 Javascript
Vue v2.5 调整和更新不完全问题
2017/10/24 Javascript
Python内置的字符串处理函数整理
2013/01/29 Python
Python的Flask框架中Flask-Admin库的简单入门指引
2015/04/07 Python
Python reduce()函数的用法小结
2017/11/15 Python
Python lxml解析HTML并用xpath获取元素的方法
2019/01/02 Python
python3.6实现学生信息管理系统
2019/02/21 Python
python+os根据文件名自动生成文本
2019/03/21 Python
用Python识别人脸,人种等各种信息
2019/07/15 Python
python函数声明和调用定义及原理详解
2019/12/02 Python
Python 批量读取文件中指定字符的实现
2020/03/06 Python
Python操作MySQL数据库的示例代码
2020/07/13 Python
豪华床上用品 :Jennifer Adams
2019/09/15 全球购物
主治医师岗位职责
2013/12/10 职场文书
学习决心书范文
2014/03/11 职场文书
先进员工事迹材料
2014/12/20 职场文书
人事任命通知书
2015/04/21 职场文书
2016年第29个世界无烟日宣传活动总结
2016/04/06 职场文书
Mysql关于数据库是否应该使用外键约束详解说明
2021/10/24 MySQL
Python集合set()使用的方法详解
2022/03/18 Python
Win11电源已接通但未充电怎么办?Win11电源已接通未充电的解决方法
2022/04/05 数码科技
Redis实现主从复制方式(Master&Slave)
2022/06/21 Redis