Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >PHP 8.4全新介绍:MacOS安装PHP8.4流程解析

PHP 8.4全新介绍:MacOS安装PHP8.4流程解析

原创
作者头像
侧风
发布于 2024-04-30 07:31:48
发布于 2024-04-30 07:31:48
42600
代码可运行
举报
运行总次数:0
代码可运行

根据官方消息,PHP 8.4将于2024年11月21日发布。它将通过三个 alpha 版本、三个 beta 版本和六个候选版本进行测试。

这次的重大更新将为PHP带来许多优化和强大的功能。我们很高兴能够引导您完成最有趣的更新升级,这些更改将使我们能够编写更好的代码并构建更强大的应用程序。

准备好了吗?让我们深入了解吧!


PHP8.4的新增功能

PHP 8.4 的 DOM 扩展现在支持 HTML5

PHP 8.4 的 DOM 扩展刚刚进行了重大升级,支持 HTML5 解析和序列化。这意味着在处理 HTML5 特定标签或在 JavaScript 中嵌入 HTML 时不再令人头疼。

只需使用新DOM\HTMLDocument类,您的 HTML5 内容就会得到正确处理,符合现代 Web 标准。

以下是从字符串创建 HTML 文档的方法:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
use DOM\HTMLDocument;

$htmlDocument = HTMLDocument::createFromString('<!DOCTYPE html><html><body>Hello, HTML5!</body></html>');

或者从文件中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
use DOM\HTMLDocument;

$htmlDocument = HTMLDocument::createFromFile('path/to/your/file.html');

了解更多:PHP RFC:DOM HTML5 解析和序列化

PHP 8.4 默认情况下 bcrypt 加密成本增加

在 PHP 8.4 中, bcrypt的默认加密成本已增加到 12。这意味着什么?

Bcrypt 是 PHP 使用的密码哈希函数。它充当了抵御想要破解密码的黑客的盾牌。

该护盾的加密强度可以调整。设置或“成本”越高,屏蔽越强,因为 bcrypt 是一种自适应函数:“随着时间的推移,可以增加迭代次数以使其变慢,因此即使计算量增加,它仍然可以抵抗暴力搜索攻击力量。”

为什么它如此重要?因为增加 bcrypt 的加密成本会使密码散列速度慢几毫秒。

了解更多信息:PHP RFC:增加默认 BCrypt 加密成本

PHP 8.4 可以更可靠地解析大型 XML 文档

此更改解决了 ext/xml PHP 扩展中涉及大型 XML 文档解析处理的潜在问题。

libxml2 版本 2.7.0 中的冲突修改在使用xml_parse()xml_parse_into_struct()函数时无意中中断了大型文档解析,从而导致解析错误。

PHP 8.4 引入了一个新的解析器选项来正确处理这些大型 XML 文档并防止解析错误,使开发人员能够有效地解析大型 XML 文档,而不需要复杂的解决方法。

了解更多信息:PHP RFC:XML_OPTION_PARSE_HUGE

PHP 8.4 中新的多字节修剪函数

PHP 8.4 的 mbstring 扩展现在包含三个新函数:mb_trim()mb_ltrim()mb_rtrim()。此添加使修剪具有多字节字符的字符串变得更加容易,从而改进了之前将 regex 与preg_replace().

新函数以多字节安全方式处理空格和其他字符。默认行为会删除一组预定义的字符,其中包括各种类型的空格字符,其中包括一些\s正则表达式中通常未涵盖的字符。

以下是 PHP 8.4 中的函数及其默认行为:

  • mb_trim($string, $characters):修剪字符串两端的字符。
  • mb_ltrim($string, $characters):从字符串的开头(左侧)修剪字符。
  • mb_rtrim($string, $characters):从字符串末尾(右侧)修剪字符。

默认情况下,$characters包括各种空白字符,但由于存储和兼容性问题,并非所有可能的 Unicode 字符。

了解更多:PHP RFC:修剪函数 mb_trim、mb_ltrim 和 mb_rtrim 的多字节

IMAP模块被移到PECL

在PHP 8.4中,IMAP模块无法在configure中编译集成,被移到了PECL。有IMAP模块需求的开发者,需要单独进行编译。


如何在MacOS上安装PHP8.4

目前PHP8.4还没有发布,但是ServBay己经集成了最新的PHP8.4 Dev版本,并且内置了IMAP等模块。开发者可以直接通过他们的官方网站https://www.servbay.com下载安装,只需要3分钟就可以配置好一个PHP开发环境

(ServBay 提供广泛的 PHP 版本,从 PHP 5.6 到最新的 PHP 8.4 Dev都有,确保开发者可以随时使用他们所需的开发环境)

了解相关


PHP 8.4带来了大量令人兴奋的新功能和改进,使开发人员能够编写更干净、更快、更具表现力的代码。

然而,升级到 PHP8.4 时务必谨慎。考虑向后兼容性更改并彻底测试您的代码以确保平稳过渡。通过使用ServBay,可以在不影响开发环境的情况下了解PHP 8.4的新功能并仔细规划升级过程,您可以释放 PHP8.4 的全部潜力,并将您的开发技能提升到新的高度。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
PHP 8.4 发布!
PHP 8.4 是一个重要的版本,它带来了主要的新功能、对构建依赖项和底层库的几项更新,以及相当多的弃用,以消除旧版 PHP 中一些遗留的不良行为和功能。
沈唁
2025/02/26
1510
PHP 8.4 发布!
PHP 8.4 新功能
在此次发布之前,一系列预发布版本(Alpha、Beta 和候选版本)允许社区测试新功能并进行最后一刻的调整。PHP 8.4 引入了多项改进,包括用于操作数组的新功能、受其他语言启发的属性钩子以及简化的语法。让我们一起回顾一下此版本中要记住的新功能。
Tinywan
2024/11/21
5000
PHP 8.4 新功能
PHP 8.4 官方重大更新功能来啦!
Tinywan
2024/11/22
3570
PHP 8.4 官方重大更新功能来啦!
PHP 中 trim 函数对多字节字符的使用和限制
在日常工作中,经常需要处理字符串。其中一种常用的情况是,需要删除字符串两端的空白字符,这就是 trim() 函数原本的作用。
沈唁
2023/12/10
3700
PHP 中 trim 函数对多字节字符的使用和限制
PHP 8.4 重磅发布了
PHP 8.4 提前发布!原计划于2024年11月21日发布的PHP 8.4.0,惊喜地提前至11月19日正式上线,紧随其后的是11月20日发布的PHP 8.4.1。如此高效的发布节奏令人瞩目。
码农编程进阶笔记
2024/11/23
4120
PHP 8.4 重磅发布了
PHP函数
strip_tags() 函数剥去字符串中的 HTML、XML 以及 PHP 的标签。防注入
OwenZhang
2021/12/08
3.1K0
PHP史诗级更新!8.4版本能力挽狂澜吗?
不同于早期 Java 一跳票就是一年的发布周期,PHP 最新发布的8.4版本甚至早于原定计划的11月21日,在11月19日这天正式上线,又以一天之隔在11月20日上线了8.4.1版本。
腾讯云开发者
2024/11/26
1.6K0
PHP史诗级更新!8.4版本能力挽狂澜吗?
ModernPHP读书笔记(三)——PHP的良好实践
ModernPHP读书笔记(三)——PHP的良好实践 (原创内容,转载请注明来源,谢谢) 一、密码 1、密码不宜用明文存储,也不能用可以解密的方式进行存储;找回密码功能,给用户发送的邮件也应是发送令牌至邮箱,不应直接把原密码发送过去。 2、PHP5.5.0有原生的密码哈希API,可以对密码加密、解密、重加密。 加密方式:password_hash($password,PASSWORD_DEFAULT, $cost),第一个参数是原密码,第二个参数是加密方式,默认使用bc
用户1327360
2018/03/07
1.1K0
你应该这个姿势学习PHP(1)
  应用场景:能防止sql的注入(当然并不完全是可以,我们可以使用pdo进行预处理然后方式sql的注入,安全不能只靠一种方式防止事情的发生)
思梦php
2018/04/02
1.2K8
你应该这个姿势学习PHP(1)
PHP常用库函数介绍+常见疑难问题解答
      最近在苦学PHP,虽然PHP在整体功能上不如Java强大,但相比PHP而言Java算是较重量级的,所以在小中型系统的开发上,使用PHP的趋势不可挡,就算是大型网站,比如淘宝也部分使用了PHP(Java后台逻辑+PHP前台展示),所以赶紧开始学PHP啦。首先介绍下比较简单但必不可少且实用的知识,可以当手册查询,适合像我一样的新手看。 一、PHP常用库函数介绍 1. PHP字符串操作常用函数 确定字符串长度   int strlen(string str) 比较两个字符串   a. strcmp
猿人谷
2018/01/17
1.4K0
PHP常用函数 字符串处理函数
友情提示:此篇文章大约需要阅读 13分钟58秒,不足之处请多指教,感谢你的阅读。订阅本站
Meng小羽
2019/12/31
1.7K0
PHP全栈学习笔记2
什么是php,PHP语言的优势,PHP5的新特性,PHP的发展趋势,PHP的应用领域。
达达前端
2019/07/03
7690
PHP全栈学习笔记2
Ubuntu如何使用Roundcube安装自己的Webmail客户端
如今,许多人使用基于浏览器的电子邮件客户端(如Gmail)来访问他们的电子邮件。但是,如果您想在查看电子邮件时停止查看广告,或者您已从公共电子邮件服务移至您自己的域,则可以运行自己的网络邮件客户端(也称为邮件用户代理或MUA)。
挺问中原
2018/08/07
11.9K1
PHP部分字符串函数汇总
我们大家知道无论哪种语言,字符串操作都是一个重要的基础,往往是简单而重要。PHP给我们提供了大量的字符串操作函数,功能强大,使用也比较简单,这里为大家总结九类字符串函数。 1. 查找字符位置函数 strpos($str,search,[int]): 查找search在$str中的第一次位置从int开始 stripos($str,search,[int]): 函数返回字符串在另一个字符串中第一次出现的位置 strrpos($str,search,[int]): 查找search在$str中的最后一次出
wangxl
2018/03/07
1.3K0
PHP 8.4 安装和升级指南
PHP 8.4 在当前的 Debian 和 Ubuntu 软件存储库中不可用。本指南使用由 Ondřej Surý 维护的存储库。多年来,Ondrej 的 PHP 存储库一直是 Ubuntu、Debian 及其衍生产品上 PHP 的实际存储库。
Tinywan
2024/11/28
8030
PHP 8.4 安装和升级指南
PHP常用的函数收集整理
本文整理了一些在php 应用开发中常用到的一些函数了,这些函数有字符操作,文件操作及其它的一些操作,下面整理一下以待备用。
botkenni
2022/01/10
3190
modern php 笔记(第一次阅读)
如果需要更多过滤html输入方式,可以使用html Purifier库,缺点:速度慢,而且可能难以配置 ==不要使用正则表达式过滤html,正则表达式很复杂吗,可能导致html无效且出错的几率高==
lin_zone
2019/02/22
1.4K0
awesome-php-cn软件资源
PHP 资源列表,内容包括:库、框架、模板、安全、代码分析、日志、第三方库、配置工具、Web 工具、书籍、电子书、经典博文等。 依赖管理 依赖和包管理库 Composer/Packagist:一个包和依赖管理器 Composer官网/Packagist官网 Composer Installers:一个多框架Composer库安装器 官网 Pickle:一个PHP扩展安装器 官网 其他的依赖管理 其他的相关依赖管理 Satis:一个静态Composer存储库生成器 官网 Composition:一个在运行时检
guanguans
2018/05/09
3.7K0
简单入门PHP中的多字节字符串操作
什么是多字节的字符串操作呢?其实不少的同学可能都已经使用过了,但我们还是要从最基础的问题说起。
硬核项目经理
2021/08/06
1.2K0
从零开始学习BOM&amp;DOM
ECMAScript,描述了该语言的语法和基本对象,如类型、运算、流程控制、面向对象、异常等。
虎妞先生
2022/09/19
6090
从零开始学习BOM&amp;DOM
相关推荐
PHP 8.4 发布!
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验