首页 > 后端开发 > 正文

php框架laravel总结 laravel与thinkphp区别是什么

2023-09-08 23:28:18 | 我爱编程网

在平时的学习生活当中,对于后端开发一定都很关心,今天我爱编程网小编为大家整理了php框架laravel总结 laravel与thinkphp区别是什么,希望能够帮助到大家。

php框架laravel总结 laravel与thinkphp区别是什么

php现在比较热门实用的框架有哪些?

PHP作为强大的Web开发语言,上手非常容易,开发效率很高,不需要像Java一样进行编译后才能执行,但是如果用原生的PHP来开发还是会存在开发速度慢,或者说后期维护难度大,缺乏代码严谨性等问题,我就需要使用目前流行的MVC框架,那么现在有哪些PHP框架更方便,更快捷呢?

1.Laravel

laravel可以说是从去年到今年都是最热门的PHP框架之一,它的优势在于易学习,上市容易,强大的扩展类库,可以直接使用Composer引用(laravel5.5以后不需要在文件引用外加的扩展类),你可以在它的官方文档中找到很多你能用的到的扩展类,不需要自己再进行开发,方便的artisan命令,一键生成MVC以及其他常用文件,并且支持队列,数据库迁移,数据填充等功能,是一个非常有艺术感的框架。

2.Thinkphp

作为PHP开发者中最受欢迎的框架之一,它有着优雅的语法,完善的开发文档,能简单的开发出你需要的功能,比起之前的3版本,最新的版本也可以使用Composer来下载类库,并且也支持队列,身份验证,回话,高级路由等功能。

3.Yii2

拥有简洁的面向对象的框架,能够很好的扩展你的视图,总的来说Yii2对开发者是很友好的。

4.CI

它可谓是PHP框架中轻量级框架的代表,本身框架非常小,但是功能依然强大,它提供了简单而精致的开发类库,唯一缺失的就是本身的安全性。

这是目前PHP比较热门的框架,个人还是比较喜欢使用Laravel,开发效率极高,有非常多的类库来辅助支持,更新也快,最近已经更新到了5.6版本,不过建议还是使用5.5LTS长期支持版,不需要经常更新框架源码,如用上手速度来看的话,优先可以选择CI框架。

php框架laravel总结 laravel与thinkphp区别是什么

laravel与thinkphp区别是什么



1、渲染模版方式的不同
在Laravel框架里,使用return view()来渲染模版;而ThinkPHP里则使用了$this->display()的方式渲染模版。
2、在实际开发中我们常常遇到这样的问题,就是开发地点不固定。
这就造成了我们需要频繁的更改数据库配置,给开发工作造成了麻烦。TP依然没有避免这个"灾难",在laravel框架中,.env环境文件的出现解决了这个麻烦。我们只需要在不同的工作地点配置好.env文件就不避再进行配置,因为无论是git还是svn,“.env是不会随着文件一起提交到服务器的”。
3、Laravel框架提供了大量的闭包
作为菜鸟的我目前只使用了use方法,即如何在函数内部使用外层变量。
4、post传值中注意点不同
在Laravel框架里,由于其考虑到了跨站攻击,所以如果使用form表单以post方式进行传值时,如果不再form表单中加入{{csrf_field()}}则会报出TokenMethodnotfound的语法错误,而TP框架则需要自己手动完成防止跨站攻击的代码。
5、条件判断语句书写方式的差异
Laravel框架里if else判断语句和foreach语句,书写时必须以@if开头,以@endif结尾。如果没有则报语法错误,@foreach @endforeach同理;而TP框架则和PHP语法规则使用方式一致,直接用if esle语句判断和foreach循环遍历。
6、Laravel里内置了大量的方法供开发者使用
在实际应用中更接近于"让对象完成一切"的开发思想,比如在后台表单验证的时候,Laravel内置了大量的验证方法。例如对用户名的验证:我们可以使用validate方法里'username'=>'required'(不能为空)|alpha_dash(必须数字字母下划线)|between:6,18(在多少位数之间);还内置了例如email;same:字段名;diff:字段名等大量的方法极大的提高了开发速度。
7、加密方式
在TP框架中,我们对用户名密码进行加密时使用md5();的方式进行加密。但md5的缺点在于其可以逆向破解,而且在同等规则下同样的密码md5加密出的字符串是有可能出现相同的,这就降低其安全性。但在Laravel框架中内置了"哈希"Hash加密单向加密方法,且同样的参数加密出的字符串是绝对不会出现相同的情况,这就提高了安全性。

8、建表
Laravel在数据库建表上有自己独立内置的结构,可以完全不用借助原生SQL语句或者SQLyogEnt、Navicat这样的建表工具进行数据库的建立,增删改查和数据交互。我想这可能是它牢牢占据NO.1的一大亮点,在ThinkPHP中则需要我们借助SQL语句或者建表工具去逐步完善数据。
8.1、首先我们需要建立模型:我用的是gitbash。gitbash是Windows下的命令工具,基于msys GNU环境,有git分布式版本控制工具,主要应用于git。但是在Laravel里也可以直接使用:php artisan make:model Models/GoodsModel -m 完成模型的创建和建表结构的创建(/database/migrations)。
8.2、向goods数据表填充数据,要注意数据的类型是严格区分的,并且一定要加。添加完后使用php artisan migrate命令完成表的创建。
Schema::create('goods', function (Blueprint $table) {
$table->increments('id')->comment('商品主键');
$table->string('title')->comment('商品的标题');
8.3、假设某个字段不符合要求或者需要添加字段怎么办?无须担心,从github中pull下项目后在数据表里直接修改,只需要用:
php artisan migrate:refresh
9、ORM
在介绍建表时已经使用了创建模型的命令:
php artisan make:model XXX;
Laravel里模型是对面向对象开发思想最好的诠释,让对象帮我们完成需求。
摘自5.1手册:(Laravel 的 Eloquent ORM 提供了漂亮、简洁的 ActiveRecord 实现来和数据库进行交互。每个数据库表都有一个对应的「模型」可用来跟数据表进行交互。你可以通过模型查找数据表内的数据,以及将记录添加到数据表中。)
本人在实际使用中也实实在在的感受到了通过创造模型对数据表操作带来的便利,譬如:批量赋值,跨表查询,删除模型和软删除,模型关联,当然这些在TP框架中也可以利用模型实现。这一点属于仁者见仁智者见智,根据个人喜好而定。
10、session的用法
10.1、ThinkPHP对Session操作进行了封装,并且无需引入就可以使用,Session的启动会在应用初始化的时候自动执行,所以无需手动使用Session::start() 来启动Session。
使用Session类操作和普通方式调用$_SESSION来操作并没有本质不同,只是Session类很多参数可以根据项目配置来灵活设置,最常用的操作方法示例:
// 检测Session变量是否存在:Session::is_set('name');
// 给Session变量赋值:Session::set('name','value');
// 获取Session变量:Session::get('name');
10.2、Laravel中Session的常用方法:
$request->session()->get('key');//获取session里的某个键名
$request->session()->set('key','default');//设定一个默认值,当指定键名不存在便返回默认值
$request->session()->all();//返回所有数据
session('k'=>$v);//写入session保存数据
以及闪存数据session()->flash()和保留特定数据->keep(['','']);
也可以自定义session驱动。

Gxlcms,大量的免费laravel入门教程,欢迎在线学习!

php框架laravel总结 laravel与thinkphp区别是什么我爱编程网

PHP有哪些流行的框架


PHP有哪些流行的框架?
PHP有哪些流行的框架?
PHP作为一种十分流行的编程语言,拥有大量的应用领域和开源程序库。其中,PHP框架可以有效提高对PHP语言的理解和运用水平。框架作为一种用于开发网络应用程序的基础架构,可以让开发者在不同项目的开发中提高效率。
在PHP框架领域中,有许多众所周知、使用广泛的优秀框架,其中一些常见的PHP框架如下:
1.Laravel
Laravel是一个富有表现力的Web应用程序框架,可简化用户与邮件、队列、缓存、会话等交互的复杂过程。Laravel对于学习和使用PHP框架的开发者来说是非常友好的。它支持MVC框架,并提供强大的路由操作和良好的模板语言。
2.CodeIgniter
CodeIgniter是一个轻量级的PHP框架,以简单、轻便和易于学习、使用、扩展和维护为特点。它适合于那些想要快速开发小的web应用程序的开发者,例如学生或刚刚入门的开发者。
3.CakePHP
CakePHP是一个易于学习、高效并且功能强大的PHP开发框架。它结合了RubyonRails的思想,并提供了对MVC的完全支持、CRUD对接的快捷方式、可插拔的插件机制、Auth/MACL等安全机制。CakePHP适用于构建网站、应用程序和内容管理系统(CMS)等。
4.Symfony
Symfony是一个高度可扩展的PHP框架,以可重复使用的代码组件开发元素,它遵循MVC的设计模型。Symfony提供了安全、体面和快速的应用开发,它广泛应用于在web和移动应用程序的开发中。
5.Zend
ZendFramework是一个开源的PHP框架,由Zend公司开发管理。它的灵活性和可扩展性为用户提供独特的使用体验。与其他框架不同,Zend框架是一个组件式框架,每个组件可以作为独立的软件库使用,包括认证、缓存、日志等。
总之,以上列举的几款常见的PHP框架都有它们各自的特点和优点,如果你正在寻找一个适合你开发项目的框架,那么你应该根据自己的需求和技术水平来选择适合自己的框架。

以上就是关于php框架laravel总结 laravel与thinkphp区别是什么的全部内容了,如果需要了解更多相关资讯敬请关注我爱编程网。
与“php框架laravel总结 laravel与thinkphp区别是什么”相关推荐
php中tp框架 laravel与thinkphp区别是什么
php中tp框架 laravel与thinkphp区别是什么

tp框架开发流程?安装好phpstudy后,运行软件.首先将tp的程序放到一个目录web_thinkphp(可自定义)打开phpStudy面版右边有一个php版本,选择好tp所需要的版本(tp3.2先5.3~5.4即可,tp5可选5.5+)127.0.0.1tp.me保存(如果没有修改权限,可以在桌面上建一个文件hosts加入上面一行代码后再覆盖到hosts所在的目录)在其它选项菜单-&g

2023-09-06 21:48:40
php写tp框架 laravel与thinkphp区别是什么
php写tp框架 laravel与thinkphp区别是什么

laravel与thinkphp区别是什么1、渲染模版方式的不同在Laravel框架里,使用returnview()来渲染模版;而ThinkPHP里则使用了$this->display()的方式渲染模版。2、在实际开发中我们常常遇到这样的问题,就是开发地点不固定。这就造成了我们需要频繁的更改数据库配置,给开发工作造成了麻烦。TP依然没有避免这个"灾难",在laravel

2023-09-09 12:10:26
php的laravel框架答辩 laravel和thinkphp的区别是什么?
php的laravel框架答辩 laravel和thinkphp的区别是什么?

面试中如何回答laravel的项目亮点举例说明其中几点,比如可以快速绑定controller和router回调函数就可以直接使用,优化了view的开发和管理使用等。还有管理数据库和版本控制了测试功能就是migration,渲染blade模板效率相对较高。laravel框架的特点和优秀是集合了php语言的特点,和很多的设计模式、loc模式、依赖注入形成了自己的特定特性。lara

2023-09-16 09:28:46
php和tp框架 laravel和thinkphp的区别是什么?
php和tp框架 laravel和thinkphp的区别是什么?

laravel和thinkphp的区别是什么?一、渲染模版方式的不同1、在Laravel框架里,使用returnview()来渲染模版;2、而ThinkPHP里则使用了$this->display()的方式渲染模版。二、条件判断语句书写方式不同1、Laravel框架里ifelse判断语句和foreach语句,书写时必须以@if开头,以@endif结尾。如果没有

2023-09-07 13:56:59
php框架和laravel区别 php主流框架都有什么
php框架和laravel区别 php主流框架都有什么

laravel和tp区别1、TP框架:ThinkPhp简单、快速,基于MVC和面向对象,易用性较高,是一款简洁实用的轻量级框架。2、Laravel框架:Lavavel一直秉承着优雅的原则,很好的支持了composer,实现了更丰富的扩展,社区文档活跃,相较于TP,Lavavel更庞大,安全性也更高,更适合开发大中型项目,被称为“巨匠型开发框架”。个人感觉TP5和Lar

2023-09-17 22:50:55
框架php与php的区别 原生php和thinkphp这些框架有什么区别?
框架php与php的区别 原生php和thinkphp这些框架有什么区别?

php模板与框架区别问题smarty主要是模板引擎,功能是将MVC中view层的php和html代码分离,并不算框架,比如将<?phpecho$var;?>替换为<!--{$var}-->,以便让美工可以更好的阅读html布局,不过老实说在这点上有点脱裤子放P的感觉。现在一般主流的框架都直接用php来当模板语言了,不太建议使用smarty,当然这东西比较简单,随便看下

2023-09-05 22:40:16
php框架与php类的区别 原生php和thinkphp这些框架有什么区别?
php框架与php类的区别 原生php和thinkphp这些框架有什么区别?

php模板与框架区别问题smarty主要是模板引擎,功能是将MVC中view层的php和html代码分离,并不算框架,比如将<?phpecho$var;?>替换为<!--{$var}-->,以便让美工可以更好的阅读html布局,不过老实说在这点上有点脱裤子放P的感觉。现在一般主流的框架都直接用php来当模板语言了,不太建议使用smarty,当然这东西比较简单,随便看下

2023-09-14 23:19:30
php类库与框架的区别 什么是php的框架 ThinkPHP这个又是怎么用的
php类库与框架的区别 什么是php的框架 ThinkPHP这个又是怎么用的

php开发需要框架吗?php中也存在框架,如国内比较常用的thinkphp、brophp。国外的Laravel。但使用其也用利弊,分析如下:框架是非常好的,它能让决定更连贯。框架能避免我们写一大堆自定义模块来实现这些性能,我们所需要做的就是将这些共用模块放在框架中实现。框架节省了我们不少的时间和精力,并且让扩展变得更容易。但是这也是问题的根本所在。对锤子来说,所有事物都是钉子Ab

2023-10-05 19:15:22