前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >php 5.6 已死,关于 php 7 你必须知道的几件事

php 5.6 已死,关于 php 7 你必须知道的几件事

作者头像
猿哥
发布于 2019-07-24 14:33:00
发布于 2019-07-24 14:33:00
1.3K0
举报
文章被收录于专栏:Web技术布道师Web技术布道师

一般手机系统升级我是跑最后的,因为不愿意踩坑,毕竟iOSAndroid这种系统都会出现bug,何况世界上被人黑的最多的语言。

今日时机已到,猿姐开始给你们科普科普有关PHP7你必须要了解的几件事。

1. 新的Zend引擎

Zend引擎从1999年的php4开始就开始驱动着php,Zend(不要与zend framework混淆)是一个用C语言开发的开源引擎.现在的php 5.X的版本用的Zend II版本,它对php来说有着重要的性能提升.Php7将采用叫PHPNG的新引擎来驱动

2. 更方便的错误处理

捕获和处理错误对于php程序猿来说,从来不是一件简单的活.新的引擎将允许你用异常来代替错误.就像在php5.X的版本中一样,在php7中如果异常没被捕获,

php将返回错误.

\EngineException 对象没有继承\Exception,这保证了代码的向后兼容和在错误处理时的两种不同类型的异常处理:传统的和新的引擎的异常处理.

为了方便我们捕获两种异常,php7引入了新的如下的异常处理方式:

3. 64位windows操作系统的支持

php是LAMP的成员,也就意味着它原生的环境是Linux-但它也能在windows操作系统上运行.5.X版本还不支持64位整形或者大文件的支持,因此X64 系列的架构的windows还是试验性的.

php7将会支持支持64位的windows,也意味着64位整形和大文件将被支持

4. 标量类型声明

标量类型声明 有两种模式: 强制 (默认) 和 严格模式。 现在可以使用下列类型参数(无论用强制模式还是严格模式): 字符串(string), 整数 (int), 浮点数 (float), 以及布尔值 (bool)。它们扩充了PHP5中引入的其他类型:类名,接口,数组和 回调类型。

以上例程会输出:

要使用严格模式,一个 declare 声明指令必须放在文件的顶部。这意味着严格声明标量是基于文件可配的。 这个指令不仅影响参数的类型声明,也影响到函数的返回值声明(参见 返回值类型声明, 内置的PHP函数以及扩展中加载的PHP函数)

5. 密码哈希中的Argon2

Argon2 是荣获 2015 年密码哈希算法比赛中的冠军的强大哈希算法, PHP 7.2 将其作为安全 Bcrypt 算法的替代品。

新版的 PHP 中引入了 PASSWORD_ARGON2I 常量,现在可以在 password_* 系列函数中使用:

password_hash('password', PASSWORD_ARGON2I);

与只使用一个 cost 因子的 Bcrypt 不同, Argon2 使用三个 cost 因子 区分如下:

定义哈希计算期间应该消耗的KiB数量的内存开销(默认值为1 << 10或1024 KiB或1 MiB)

定义哈希算法迭代次数的时间开销(默认值为2)

并行因子,用于设置哈希计算时使用的并行线程数(缺省值为2)

以下三个新常量定义了默认的 cost 因子:

·

PASSWORD_ARGON2_DEFAULT_MEMORY_COST

· PASSWORD_ARGON2_DEFAULT_TIME_COST

· PASSWORD_ARGON2_DEFAULT_THREADS

但是为什么猿姐这次要来讨论PHP7呢?

因为猿姐之前收到一个巨大的消息

还有两个月停止PHP 5.6 安全支持!

根据 PHP 官方网站列出的支持版本及时刻表(如下),PHP 5.6 安全支持将于2018年12月31日终止。即两个半月后,使用 PHP 5.6 版本的网站将不再收到安全漏洞或错误更新。

Paragon Initiative Enterprise的首席开发官Scott Arciszewski 在接受采访时表示,

对于PHP生态系统来说,这是一个巨大的问题。许多人认为他们可以'侥幸'在2019年继续运行PHP 5,而这其实是一种安全工作上的刻意疏忽。

事实上,PHP 5.6 的主要及安全更新期早就结束,但因使用的网站较多,因此,PHP 维护组织曾一度分别延长其支持时间。有些人将这种情况描述为 PHP 风险。较新的 PHP 7.0 将不再在2018年12月1日的 EOL(生命周期结束)提供安全支持。即便是版本 PHP 7.1 也将于2018年12月1日终止。一年后结束安全支持。

目前三大网站内容管理系统(CMS)项目中,只有 Drupal 宣布从2019年3月6日起,Drupal 支持网页最低要求 PHP 7,建议使用 7.1 版。Joomla 推荐使用 5.6 或更高版本,支持下限为 5.3.10。Wordpress 建议使用 PHP 7.2 或更高版本,最低支持 5.2.4。

根据 ZDNet 报道,WordFence 安全组件研发主管 Sean Murphy 表示,PHP 漏洞利用的主要目标不是在 PHP 本身,而是在 PHP 库和 CMS 系统中,但其他安全专家认为,等截止日期到来,黑客就会积极利用 PHP 5.6 中的漏洞的。

PHP漏洞攻击者主要目标不是在PHP本身,而是在PHP函式库及CMS系统,在两个月大限到来,黑客们会更积极在PHP 5.6以前版本中找出漏洞。自家网站一不小心被挂马,网站则沦为色情与赌博站,形象大跌!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-11-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PHP技术大全 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
PHP7.2有哪些新特性?
《PHP7.2有哪些新特性?》一文主要介绍了PHP7.2版本的新特性,包括安全性的加强、对数组和字符串的改进、以及语法和功能的更新。其中,PHP7.2引入的argon2算法解决了传统加密方式的问题,提高了加密安全性。此外,PHP7.2还取消了mcrypt扩展,增加了对SSL/TLS的支持,并改进了数组和字符串操作、语言特性和其他一些功能。总的来说,PHP7.2版本在性能和安全性方面都有显著的提升和优化。
企鹅号小编
2018/01/04
1.8K0
PHP7.2有哪些新特性?
PHP 7.0.0正式版来了
PHP 7.0.0 带来了新版本的Zend引擎,不仅如此,还有许多新特性和改进,比如:
CSDN技术头条
2018/02/11
9390
密码加密我弃用了MD5加盐,选择Bcrypt加密
密码存储时使用MD5算法加上盐(salt)是一种常见的安全措施。MD5是一种广泛使用的哈希函数,它可以将任意长度的数据转换为128位的哈希值。但是,MD5本身并不安全,因为它容易受到多种攻击,如碰撞攻击和彩虹表攻击。
Tinywan
2024/07/30
4440
密码加密我弃用了MD5加盐,选择Bcrypt加密
【黄啊码】用PHP7性能居然是5.6的三倍?赶紧看看它有什么新特性
大家好,我是黄啊码,最近说到php从入门到拆门,有网友说,门都还没进,怎么拆门?那咱们现在就从php7说起,至于入门的太简单,我就略过了,大家加油,不懂Q我吧。
黄啊码
2022/11/21
1.2K0
【黄啊码】用PHP7性能居然是5.6的三倍?赶紧看看它有什么新特性
php 5 与7有什么区别
PHP 7.0使用新版的ZendEngine引擎,带来了许多新的特性,其与相比,有如下特性:
全栈程序员站长
2022/07/08
5030
PHP7.0~PHP7.1~PHP7.2~PHP7.3~PHP7.4新特性
大家都知道,php现在在不断地更新和壮大,每个版本都有一次性能的提升,接下来我将给大家讲解下PHP7.X的新的特性。我会按照每个版本的特性进行讲解。
OwenZhang
2021/12/08
15.6K0
PHP7.0~PHP7.1~PHP7.2~PHP7.3~PHP7.4新特性
PHP 7 新特性
PHP 7+ 版本极大地改进了性能,在一些WordPress基准测试当中,性能可以达到PHP 5.6的3倍。
Lansonli
2021/10/09
1.7K0
【问底】徐汉彬:PHP7和HHVM的性能之争
【导读】徐汉彬曾在阿里巴巴和腾讯从事4年多的技术研发工作,负责过日请求量过亿的Web系统升级与重构,目前在小满科技创业,从事SaaS服务技术建设。最近,PHP7和HHVM的性能之争成为了一个讨论热点,
CSDN技术头条
2018/02/08
1.2K0
【问底】徐汉彬:PHP7和HHVM的性能之争
PHP7带来了哪些重大的变革,你知道吗?
PHP7带来的好处 在性能上的大幅度提升,可以省机器,可以省钱。 而且还带来了新的特性,我们一起来看看吧!
友儿
2022/09/11
1.1K0
2019 PHP 安全指南
2019 年,大多数的科技工作者 — 尤其是 Web 开发者 — 必须摈弃掉关于开发安全 PHP 应用的老一套。这对那些不相信能够开发出安全的 PHP 应用的人来说尤其重要.
猿哥
2019/06/17
1.2K0
PHP7 新特性简介(一)
本文介绍了PHP 7.x版本的新特性,包括空合并运算符、数组简化、类型强制转换、匿名函数、生成器、PHP 7.1新语法、NULL运算符、组合比较符和Closure::call()静态方法等。
郑科
2017/05/16
2K0
PHP7 新特性简介(一)
【鸟哥】PHP7强悍性能背后,zval的变化!
PHP7已经发布, 如承诺, 我也要开始这个系列的文章的编写, 主要想通过文章让大家理解到PHP7的巨大性能提升背后到底我们做了什么, 今天我想先和大家聊聊zval的变化. 在讲zval变化的之前我们先来看看zval在PHP5下面是什么样子
猿哥
2019/07/25
7660
PHP 7 vs HHVM 直接性能对比
PHP 是最流行的用于 web 开发的脚本语言之一。PHP 的最新版本,PHP 7 在性能上做了很大的优化。不过,PHP 还有一个竞争对手 HHVM (HipHop Virtual Machine) — 一个运行 PHP 代码的虚拟工具。二者直接的比较正在升温,那么让我们来看一下他们直接的性能对比吧。
猿哥
2019/08/20
1.6K0
认真的了解一下PHP7带来了哪些重大的变革【基础】
PHP7带来的好处 是的,性能上的大幅度提升,可以省机器,可以省钱。 PHP7带来的新东西 1.类型的声明 可以使用字符串(string), 整数 (int), 浮点数 (float), 以及布尔值
友儿
2022/09/11
5130
日请求亿级的 QQ 会员 AMS 平台 PHP 7 升级实践
文章主要介绍了从PHP 5.6升级到PHP 7.x的必要性,以及升级过程中可能遇到的问题和解决方法。作者通过介绍升级过程和优化后的性能提升,让读者对升级过程有更深入的了解。同时,也提醒大家在升级过程中需要注意的问题,以确保升级能够顺利进行。
小时光
2016/09/28
15.7K9
日请求亿级的 QQ 会员 AMS 平台 PHP 7 升级实践
PHP语言的优势、发展趋势是什么?近年来有哪些重要的更新和改进?
PHP语言的发展趋势是朝着更高的性能、更好的可扩展性、更强的类型支持和更好的安全性方向发展。近年来的重要更新和改进使得PHP更适合构建高性能、可靠和安全的Web应用。
一凡sir
2023/07/25
1.3K1
php内核相关阅读笔记:php7、sapi、生命周期
PHP代码在语法解析阶段直接生成了ZendVM指令。zend_language_parse.y中生成opline指令
conanma
2021/12/02
8010
[PHP7.0-PHP7.2]的新特性和新变更
php7发布已经升级到7.2.里面发生了很多的变化。本文整理php7.0至php7.2的新特性和一些变化。
conanma
2021/12/02
1.4K0
相关推荐
PHP7.2有哪些新特性?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档