hi,你好!欢迎访问本站!登录
本站由简数采集腾讯云宝塔系统阿里云强势驱动
当前位置:首页 - PHP框架 - Laravel - 正文 请牢记本站网址www.sosophp.cn

laravel与thinkphp区分是什么【laravel框架】

2019-11-27Laravel搜搜PHP网40°c
A+ A-

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驱动。

ki4网,大批的免费laravel入门教程,迎接在线进修!

以上就是laravel与thinkphp区分是什么的细致内容,更多请关注ki4网别的相干文章!

  选择打赏方式
微信赞助

打赏

QQ钱包

打赏

支付宝赞助

打赏

  选择分享方式
  移步手机端
laravel与thinkphp区分是什么【laravel框架】

1、打开你手机的二维码扫描APP
2、扫描左则的二维码
3、点击扫描获得的网址
4、可以在手机端阅读此文章