首页 >php框架 >ThinkPHP >thinkphp5与laravel的区别是什么

thinkphp5与laravel的区别是什么

青灯夜游
青灯夜游原创
2021-09-02 10:57:082589浏览

thinkphp5与laravel的区别:1、Thinkphp中使用“$this->display()”方式来渲染模版,而Laravel中使用“return view()”;2、跨站方式不同;3、路由不同;4、Thinkphp没有中间件,Laravel有中间件;5、加密方式不同。

thinkphp5与laravel的区别是什么

本教程操作环境:windows7系统、Laravel6&&thinkphp5版,DELL G3电脑。

Laravel框架与thinkphp5框架的哪些区别

首先就是它们渲染模板的方式不同:

Thinkphp语句是:$this->display()

Laravel语句是:return view()

第二种是它们的跨站方式不同:

Thinkphp需要手动完成防止跨站攻击的代码

Laravel考虑到跨转请求伪造,使用form表单以post方式传值,并且要在form表单中加入{{ csrf_field() }}来完成,不加会{{csrf_field}}显示token令牌错误

第三点就是路由不同:

Thinkphp(3.2)必要要填写控制器,否则无法访问

Lavarel是一个重路由的框架,所有的功能都是由路由发起的。他可以没有控制器方法,没有模型,没有视图,但是一定要有路由。

第四点就是中间件:

Thinkphp:没有中间件

Laravel:具有中间件,可以实现访问前后的处理(请求和返回,权限认证等)

第五点就是加密方式不同:

Thinkphp:它采用的是thinkphp内置算法中的md5()加密算法,易被外界逆向破解,强行破除。

Laravel:采用的是内置的hash加密(单向加密方法),没有逆向破解的说法.

laravel里内置了大量的方法供开发者使用,在实际应用中更接近于"让对象完成一切"的开发思想,比如在后台表单验证的时候,Laravel内置了大量的验证方法,例如对用户名的验证:我们使用可以validate方法里’username’=>‘required’(不能为空)|alpha_dash(必须数字字母下划线)等

第六点就是If和foreach语句区别:

Thinkphp:和原生php中的写法一致

Laravel:在编写的时候一定要添加@符号(@if-@endif @foreach-@endforeach)

【相关推荐:laravel教程thinkphp教程

以上是thinkphp5与laravel的区别是什么的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn