⑴ laravel和thinkphp的区别
laravel和thinkphp都是开源的php框架。两个都有很好的文档支持。
区别:
tp是国产的,laravel是国外的
laravel有很好的路由机制(自已任意制定路由,有一个rouute.php文件) ,当然tp5.0+整的也跟laravel差不多了(原来路由都是访问 模块/控制器/方法)
当然是语法也有很多区别了这篇文字写的不错,你可以看看
⑵ laravel和thinkphp的区别是什么
一、渲染模版方式的不同
1、在Laravel框架里,使用return view()来渲染模版;
2、而ThinkPHP里则使用了$this->display()的方式渲染模版。
二、条件判断语句书写方式不同
1、Laravel框架里if else判断语句和foreach语句,书写时必须以@if开头,以@endif结尾。如果没有则报语法错误,@foreach @endforeach同理;
2、而TP框架则和PHP语法规则使用方式一致,直接用if esle语句判断和foreach循环遍历
三、post传值中注意点不同
1、在Laravel框架里,由于其考虑到了跨站攻击,所以如果使用form表单以post方式进行传值时,如果不再form表单中加入{{csrf_field()}}则会报出TokenMethodnotfound的语法错误,
2、而TP框架则需要自己手动完成防止跨站攻击的代码。
四、加密方式不同
1、在TP框架中,我们对用户名密码进行加密时使用md5();的方式进行加密。但md5的缺点在于其可以逆向破解,而且在同等规则下同样的密码md5加密出的字符串是有可能出现相同的,这就降低其安全性。
2、但在Laravel框架中内置了"哈希"Hash加密单向加密方法,且同样的参数加密出的字符串是绝对不会出现相同的情况,这就提高了安全性。
(2)thinkphp和php的区别扩展阅读:
在实际开发中常常遇到这样的问题,就是开发地点不固定。这就造成了需要频繁的更改数据库配置,给开发工作造成了麻烦。TP依然没有避免这个"灾难",在laravel框架中,.env环境文件的出现解决了这个麻烦。需要在不同的工作地点配置好.env文件就不避再进行配置,因为无论是git还是svn,“.env是不会随着文件一起提交到服务器的”。
⑶ 相对于别的php框架来说thinkphp有什么缺点
PHP框架对于立项来说非常重要,影响的是团队的开发效率和后续的维护开发成本,而对于框架又是萝卜青菜各有所爱。同样一个框架,有人爱到极点,有人骂为垃圾。所以做个整理,各取所需。
1、从Github数据来看,Laravel高居榜首,而它在国外也是用的人最多的。Laravel优点是代码优雅简洁;缺点是依赖其他扩展,内部事先复杂,系统复杂时需要配置大量的路由规则,文档少,版本更新快且不连续。
2、ThinkPHP国人开发维护,优点是中文文档完善,社区活跃;缺点是高频单字母函数让人不知所云,代码并不优雅。适合于国人快速开发一些Web系统。个人感觉缺少ORM。
3、phalcon是C写的PHP框架,以PHP扩展形式加载,优势是性能绝对的第一,是其他框架的十倍,但缺点是学习成本高,一旦发现框架bug对于不懂C和PHP扩展的同学来说几乎是死穴。
4、Yii,华裔开发,所以交流上比较顺畅,优点是强大的组件,丰富的类库,成熟的模式,方便的gii,各式的widget,支持ORM,支持多语言国际化,代码干净。缺点是入门容易,精通很难,需要懂其设计思想。
多角度对比
性能:phalcon > yii ≈ laravel,因为phalcon使用C语言开发,以php扩展的方式加载,这样不需要对框架进行额外的解析和执行,所以性能好
代码可读性:laravel更胜一筹(表现力较强,不懂php基本也能看懂他在做什么)
开发速度:yii ≥ laravel > phalcon
学习成本、使用成本:yii ≥ laravel > phalcon
综上所述,整体上Yii相对突出,适合中大型项目;ThinkPHP适合快速开发和中小型项目;phalcon适合高性能要求的项目;Laravel适合简洁对代码有最追求的同学。大家各取所需。
⑷ thinkphp框架等等和phpcms等等有什么不同呢
框架就是提供一个快速敏捷开发的平台,里面一些常用的功能,都封装好,然后你要按照框架的语法和文件结构来进行网站的建设,就好比是搭建了一个房子外面的框架都设计好,你需要做的是修改里面的东西.
而cms是将整个房间,不仅框架搭建好了.里面的各个房间也给你布置好,可以不经过任何加工直接可以入住.
两者的优缺点是:
框架相对比较灵活些,可以做更多自己想做的,而不用看太多的代码.
CMS的优点就是功能比较齐全,代码都给你做好,你要做的仅仅是安排一下布局,或者做个模板.但是可变化性没有框架好.要修改的话研究的代码比较多.核心的部分比较难研究.
⑸ 织梦建站、phpcms建站、thinkphp有什么区别
总的来说:
织梦(dedecms)、 phpcms 都是cms内容管理系统! thinkPHP 是PHP的一种开发框架;
cms 相对简单,记住对应的调用标签,就是简单的套模板,不用开发后台(二次开发除外),模块只能是cms提供的模块。但开发速度快,是快速建门户网站的最佳选择,也是初学者需要掌握的一种!
think就是前后一起开发,从建数据库设计表,到后台管理的增删改查,再到前台的模板调用,相对复杂,但灵活!
⑹ 什么是thinkphp
thinkphp是php(web服务器脚本语言)开发的一种框架,可以和多种开发模式结合,可以更好的做到把网站的静态页面和业务逻辑及数据的操作进行分离,提高代码的可读性,网站的安全性,及更好的处理数据能力
⑺ thinkphp是软件吗。还是什么
thinkPHP不是软件
是PHP语言的一种开源框架。这个框架是国人开发,所以有中文社区论坛的
⑻ ThinkPHP 5.0和ThinkPHP 3.2的区别
URL和路由
5.0的URL访问不再支持普通URL模式,路由也不支持正则路由定义,而是全部改为规则路由配合变量规则(正则定义)的方式:
主要改进如下:
1.增加路由变量规则;
增加组合变量支持;
增加资源路由;
增加路由分组;
增加闭包定义支持;
增加MISS路由定义;
支持URL路由规则反解析;
2.请求对象和响应对象
5.0新增了请求对象Request和响应对象Response,Request统一处理请求和获取请求信息,Response对象负责输出客户端或者浏览器响应。
3.废除原来的操作前后置方法;
增加beforeActionList属性定义前置操作;
支持任意层次的控制器定义和访问;
URL访问支持自动定位控制器;
4.数据库
5.0的数据库查询功能增强,原先需要通过模型才能使用的链式查询可以直接通过Db类调用,原来的M函数调用可以改用db函数,例如:
3.2版本
M('User')->where(['name'=>'thinkphp'])->find();
5.0版本
db('User')->where('name','thinkphp')->find();
5.自动验证和自动完成
5.0的数据自动验证和自动完成和3.2版本区别较大,5.0的数据验证采用验证器定义并且通过thinkValidate类进行统一的验证。自动完成则通过在模型里面定义修改器来完成。
6.异常
5.0对错误零容忍,默认情况下会对任何级别的错误抛出异常(但可以在应用公共文件中设置错误级别),并且重新设计了异常页面,展示了详尽的错误信息,便于调试.
⑼ 原生php和thinkphp这些框架有什么区别
thinkphp等框架是 面向对象的mvc架构 mvc是目前主流的开发模式 框架是自己已经做好了这种架构开发者只需要写业务代码就可以了 而且框架一般会把一些常用的类提供给开发者 比如图片处理 分页类 验证码类 等等 框架还会把sql语句进行简化 这些都是在提高开发者的开发效率 而如果使用原生php 开发者需要自己做mvc的架构 自己做单入口 开发效率以及代码的可维护性都是不如直接使用那些主流的mvc框架