PHP 8.2 正式发布
2022年12月8日,PHP 8.2 正式发布了。PHP 8.2 是PHP语言现代化旅程中一个重要的里程碑。除了一些重要的新特性和改进之外,PHP 8.2 还通过弃用对类的动态属性支持、特定非最优配置值时发出警告,以及修复一些旧版 PHP 中对数组排序和特定类型字符串转换/编码操作产生影响的行为,来提升语言效率。此次更新带来了许多改进和新特性,诸如:只读类析...
PHP 8.2: Mbstring: Base64、Uuencode、QPrint 和 HTML Entity 编码弃用
PHP 多字节字符串扩展(mbstring) 添加功能,用来操作包含多字节的字符比如中文、Emojis 和其他不能用单字节表示的文字。该扩展支持将其他几种字符集比如 UTF-8/16/32 和 ISO-8859-1 之间的转换。Mbstring 也支持一些编码如 Base64, QuotedPrintable, Uuencode 和 HTML Entitie...
PHP 8.2 特性 - 新增 ini_parse_quantity 函数
PHP INI 指令接受可包含后缀的数据大小,用以指定单位乘数,比如 5M或者 1G。这些后缀在 PHP INI 文件中广泛使用,不过并不是国际标准后缀。 ini_parse_quantity 是在 PHP 8.2 中新加入 PHP 的函数。该函数解析由 PHP INI 值可以识别的任何数据大小(比如 56K,256M,1G) 并以 byte 返回...
关于ThinkPHP存在远程代码执行漏洞的风险提示
监测发现,ThinkPHP官方修复了一处远程代码执行漏洞。该漏洞是由于在ThinkPHP开启了多语言功能时,允许未经身份验证的远程攻击者通过构造恶意数据进行远程代码执行攻击,获取服务器最高权限。该漏洞已发现在野利用,目前官方已发布安全版本。风险等级高风险漏洞风险攻击者利用该漏洞可导致任意命令执行影响版本ThinkPHP < V6.0.14ThinkPH...
PHP 8.2 新特性 —— 新增 memory_reset_peak_usage 函数
PHP 8.2 新增了一个名为 memory_reset_peak_usage 函数,用以重置 memeory_get_peak_usage 返回的内存使用峰值。这对于调用或迭代一个动作多次的应用是有用的,需要记录每次调用的内存峰值。没有新增的 memory_reset_peak_usage 函数重置内存使用率的能力,memory_get_pea...
PHP 8.2 移除的功能 —— MySQLi 不再支持使用 libmysqli 编译
历史上 PHP 支持两个库来连接 MySQL 数据库。对于 mysqli 扩展和 pdo_mysql 扩展,这些库为连接、查询、检索和处理检索数据提供了底层的功能支持。mysqlnd (MySQL Native Driver):PHP 项目的一部分,提供了现代性功能,诸如返回原生PHP 数据类型(比如 integer),像 PHP 内核那样进行内存管理,功能...
PHP 8.2: 新增 openssl_cipher_key_length 函数
在 PHP 8.2 中,OpenSSL 扩展添加了一个名叫 openssl_cipher_key_length 的新函数,该函数返回 OpenSSL 加密所需密钥的长度(byte)。该信息来自于 OpenSSL 基础库,因此,可以信赖。该函数与现有的 openssl_cipher_iv_length() 函数相似,后者返回加密所需的初始化向量长度。opens...
Composer 2.4 的新特性
Composer,PHP事实上的依赖关系管理器。Composer 2.4版本中引入了几个新功能。它带来了新的命令,如audit和bump,支持在受支持的shell上完成shell,建议在适当的地方安装带有--dev标志的包,改进的进程信号处理等等。与以前的次要版本Composer 2.3类似,Composer 2.4也需要PHP 7.2。使用较旧...
PHP 8.2:弃用特性 — utf8_encode 及 utf8_decode 函数弃用
在 PHP 8.2 中使用 utf8_encode 和 utf8_decode 函数会出现废弃通知,这些函数在 PHP 9.0 中会被移除。