您的当前位置:首页>全部文章>文章详情

【PHP】ThinkPHP与Laravel一样吗

CrazyPanda发表于:2024-07-14 21:24:38浏览:299次TAG:
thinkphp和laravel是不一样的。thinkphp和laravel虽然都是php开发框架,但是有很多区别:1、渲染末班的方式不同,thinkphp用“$this->display()”的方式渲染模版,laravel使用“return view()”方法;2、laravel是一个重路由的框架,而thinkphp要有控制器方法才能正常访问。

thinkphp和laravel不一样

ThinkPHP是免费开源的,快速的,简单的,面向对象的轻量级PHP开发框架,ThinkPHP可以支持windows/Unix/Linux等服务器环境,正式版需要PHP5.0以上版本支持,支持MySql、PgSQL、Sqlite多种数据库以及PDO扩展,ThinkPHP框架本身没有什么特别模块要求,具体的应用系统运行环境要求视开发所涉及的模块。

Laravel 是一个由Taylor Otwell所创建,免费的开源PHP Web 框架,旨在实现的Web软件的MVC架构,并作为CodeIgniter的替代方案。其源代码托管于GitHub,许可条款为MIT许可证。Laravel的特色包含:支持用户身份验证和许可,具有模块化的包系统且有专属的包库,提供连接许多种类的关连式数据库的方式,提供工具来协助应用程序的部署和维持,并且发展出许多语法糖。

主要区别:(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是不会随着文件一起提交到服务器的"。


猜你喜欢

【PHP】PHP中的堆和栈的概念及其应用
hp作为一门非常流行的编程语言,其对于数据结构的处理和使用具有非常重要的作用。而在php中,堆和栈是两种非常重要的数据结构,它们在程序设计和实现中有着重要的应用价值。本文将从概念和应用两方面介绍php中的堆和栈。一、堆和栈的概念堆堆是一种数据结构,它是一种特殊的树形结构。在PHP中,堆是由节点和边组成的一种图形式的数据结构。堆中每个节点都有一个值,并且每个节点的值都满足一定的关系,即父节点的值大于等于子节点的值(大根堆)或父节点的值小于等于子节点的值(小根堆)。在PHP中,堆通常是用来进行高效
发表于:2024-07-29 浏览:283 TAG:
【PHP】关于PHP8中match新语句的骚操作
PHP8新语法:match [更骚的匿名函数操作]PHP8 新出的一个语法很好用,就是 match 语句。match 语句跟原来的 switch 类似,不过比 switch 更加的严格和方便原来的 switch 语句代码如下:function getStr( $strType ){     switch( $strType ){       &nb
发表于:2024-01-06 浏览:326 TAG:
【PHP】array_merge详解
array_merge — 合并一个或多个数组 将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面。返回作为结果的数组。
发表于:2025-03-26 浏览:39 TAG: #php
【PHP】服务器怎么检测是不是php
随着互联网的发展和普及,服务器已成为人们日常使用的一种重要设备。服务器作为网站和应用程序的基础,承载着海量的数据和用户,对网站和应用程序的性能和稳定性有着决定性的影响。而其中最常用的服务器语言之一就是PHP,本文将探讨服务器如何检测是否为PHP。什么是PHP?PHP是一种服务器端脚本语言,由Rasmus Lerdorf创建于1994年。它用于创建动态网页,与HTML搭配使用,能够动态生成HTML、CSS和JavaScript等前端页面元素。PHP还可以连接数据库和服务器,实现网站和应用
发表于:2023-12-19 浏览:390 TAG:
【PHP】thinkphp5支付宝服务商手机网站支付(新版sdk)
 public function pay() {  Vendor('alipay.wappay.service.AlipayTradeService');         Vendor('alipay.wappay.buildermodel.AlipayTradeWapPayContentBuilder');   &
发表于:2023-12-27 浏览:328 TAG:
【PHP】关于bug率计算和它的实际意义
问题1:bug率有什么作用?my opion:用处有很多,需要具体情况具体分析,不过主要作用一般是来评价工作产品的质量。如果bug率较高,说明系统质量较差,需要大量的返工。项目经理就需要做好缺陷分析(缺陷的类型、分布、严重程度等),找出原因,以便做好下一阶段的缺陷预防工作。除此之外,还可以结合其它方面的信息,判断是否一些工作不充分。譬如,如果缺陷密度过低,有两个原因:可能工作产品质量确实高;也可能评审或测试不充分,更多的缺陷没有发现。在某些公司,bug率也作为项目度量考核的一项指标。问题2:bu
发表于:2024-06-22 浏览:263 TAG:
【PHP】php可以开发动态网站的原因是什么
php可以开发动态网站的原因是:1、PHP语言具有开源性,可以简化开发过程,实现处理不同项目的需求;2、具有可移植性,不在局限于某个特定操作系统进行开发和部署;3、具有很高的可扩展性,支持多种插件和拓展,增强功能和性能;4、简单易学,支持所有的主流操作系统,有大量的支持和教程,使得语法和逻辑直观易于了解;5、处理性能高,可以处理大量的流量和数据,支持多线程并发处理请求等等。本教程操作系统:Windows10系统、php8.1.3版本、Dell G3电脑。PHP是一种通用开源脚本语言,主
发表于:2023-12-19 浏览:336 TAG:
【PHP】php代码规范七大原则
hp代码规范七大原则包括一致性、可读性、简洁性、可复用性、可测试性、安全性和性能。详细介绍:1、一致性,代码应该保持一致性,即在整个代码库中使用相同的命名规范、缩进风格、代码注释等,这样可以使团队成员更容易理解和阅读代码,减少出错和混淆的可能性;2、可读性,代码应该易于阅读和理解,为了提高可读性,可以使用有意义的变量和函数命名,避免使用过于复杂的表达式和嵌套结构等等。本教程操作系统:windows10系统、PHP 8.1.3版本、DELL G3电脑。在PHP开发中,遵循良好的代码规范是非常重要
发表于:2024-03-17 浏览:307 TAG:
【PHP】PHP静态化
随着互联网的快速发展,网站访问量越来越大,同时网站的性能也成为了设计者们需要考虑的重要问题之一。对于使用php语言的开发人员来说,静态化是提高网站性能的一种有效方法。在本文中,我们将探讨php中静态化的方法。一、什么是静态化静态化是指将动态生成的网页文件(如PHP文件)转换为静态的HTML文件存储在服务器上。当用户请求时,直接访问静态HTML文件,避免了每次请求都要执行PHP代码的情况,从而提高了网站的性能响应速度。二、静态化的优劣静态化虽然能够提高网站响应速度,但它也存在一些缺陷:优点:1.减
发表于:2024-06-18 浏览:274 TAG:
【PHP】PHP函数array_map()
在PHP的函数库中,有一款非常实用的函数,那就是array_map()函数。它可以将一个数组中的数据传递给某个函数进行处理,最终返回一个新的数组。array_map()函数可以极大地方便我们数据的处理,下面我们来详细介绍一下它的使用。一、array_map()函数的基本用法array_map()的基本语法格式为:array_map(callable $callback, array ...$arr)其中,$callback参数表示将要被调用的函数或方法,它和数组中的每一个元素一一对应。而$arr
发表于:2024-07-31 浏览:260 TAG: