0

0

PHP8.2最新进展,即将进行新特性冻结!

青灯夜游

青灯夜游

发布时间:2022-07-04 13:54:38

|

3560人浏览过

|

来源于PHP武器库

转载

php基金会每月都会在博客上发表当月的php核心的最新进展。本文介绍的是6月的进展情况。

PHP8.2 的 QA 版本 和 特性冻结

PHP8.2计划于11 月 24 日 发布,PHP的版本发行管理员们已经发布了PHP8.2的Alpha 1和Alpha 2的版本。

这些Alpha 版本不适合用于生产环境,而是用作测试环境和本地开发的版本节点。

已经编译的windows版本可以在 https://windows.php.net/qa/ 上找到,Docker 镜像 可以在Docker Hub 上找到,源代码在Github 上的 php/php-src中,可以自行编译,在 Homebrew 上,PHP 8.2-dev 软件包可从 shivammathur/php 查看相关指令。

立即学习PHP免费学习笔记(深入)”;

7 月 19 日 是 PHP 8.2 特性冻结日期,在此之后PHP8.2不在接收新的特性建议。PHP的新特性都有2周的讨论期和2周的投票期。在特性冻结之前必须对所有的RFC(提案)进行投票。

RFC的更新

上次在 PHP8.2将有哪些改动(性能改进、新特性)!中介绍了一部分已经通过的新特性,如今又有一些新特性被投票通过,还有一些正在进行中。

已实现:允许false和null作为独立类型

在之前的文章中已经介绍过,有些开发者并不看好这件事,认为false作为独立类型并没有什么用。在这之前false只能和其他类型一起联合声明。

你可以在PHP的播客中了解到对开发者George Peter Banyard的访谈。https://phpinternals.news/99 ,他提到大量的传统函数会在内部返回false和抛出异常。并不会返回有实际意义的东西,返回false也许是为了中断当前函数代码的执行。所以使用false作为独立的返回值也是有意义的。

已实现:允许true作为独立类型

早在之前的文章中,小编就提到过,false可以作为独立的类型(并且进行声明),但是true却不可以。此提案建议添加true作为独立类型,使PHP的类型系统根据表现力。

已通过:随机扩展5.x

是 Go Kudo 提出的 RFC 的第五次迭代,改进PHP的随机数生成器,并且将一些列的改动移动到单独的扩展中。

已通过:为is_callable添加弃用通知,并添加callable类型

PHP以后将弃用is_callable函数的部分表现,但在PHP8.2中只会产生弃用通知。这样做的原因,简单来讲,is_callable使用起来语法混乱。但注意,is_callable只是放弃了判断字符串的用法,比如is_callable(‘myFunction’),对于其他类型仍然是可用的,比如一个变量代表的是一个回调函数。

已通过:析取范式类型

该提案提议PHP支持更多的类型声明组合,比如:

(A&B&D)|int|null

就是说该值有可能是null,有可能是整型,也有可能是实现了A接口、B接口、D接口的对象。

对此可以查看提案详情:https://wiki.php.net/rfc/dnf_types

更多的RFC

还有更多讨论中的提案,下面做一个简单的介绍和链接。

讨论中:新的CURL RUL API(增加curl类和url类)

讨论中:const声明时使用枚举属性值

讨论中:PDO程序中特性的子类(能够提高对sqlite、pgsql的支持)

讨论中:使 iterator_*() 系列接受所有可迭代对象(目前只接受Traversables,但不接受array)

绿色大气办公家具类企业织梦模板1.0
绿色大气办公家具类企业织梦模板1.0

绿色大气办公家具类企业织梦模板是以织梦最新内核来进行开发的模板,该模板属于家具行业,装修企业,家装类,属于企业通用,装修设计、家具生产等企业均可以使用该模板,页面简洁简单,容易管理,DEDE5.5内核以上都可以使用;附带测试数据!模板特点:简洁美观大方小清新的设计风格,图片展示效果绝佳。页面结构简单,利于SEO的优化,模板后台易于管理。使用程序:织梦DEDECMS5.5以上版本都可以使用。温馨提示

下载

讨论中:在枚举中实现自动Stringable(但仍然不能自定义覆盖)

讨论中:短闭包(匿名函数想要使用外部变量必须使用use声明,短闭包可以解决这样的问题(,跟js的箭头函数效果一样))

提到的文章链接:

  • PHP8.2的windows版本( https://windows.php.net/qa/ )

  • PHP8.2的docker 镜像( https://hub.docker.com/_/php?tab=tags&page=1&name=8.2.0 )

  • PHP8.2的源码托管地址( https://github.com/php/php-src )

  • PHP8.2的Mac工具Homebrew 安装( https://github.com/shivammathur/homebrew-php )

  • PHP8.2将有哪些新东西?( https://phpreturn.com/index/a626a74a300dc5.html )

  • 提案:将false和null作为独立类型( https://wiki.php.net/rfc/null-false-standalone-types )

  • 对于(将false和null作为独立类型)提案的开发者访谈( https://phpinternals.news/99 )

  • 提案:将true作为独立类型( https://wiki.php.net/rfc/true-type )

  • 提案:对is_callable的弃用通知( https://wiki.php.net/rfc/partially-supported-callables-expand-deprecation-notices )

  • 提案:析取范式类型( https://wiki.php.net/rfc/dnf_types )

  • 提案:新的CURL URL API ( https://wiki.php.net/rfc/curl-url-api )

  • 提案:const声明使用枚举属性值( https://wiki.php.net/rfc/fetch_property_in_const_expressions )

  • 提案:PDO的特定子类( https://wiki.php.net/rfc/pdo_driver_specific_subclasses )

  • 提案:扩大iterator的可迭代多项( https://wiki.php.net/rfc/iterator_xyz_accept_array )

  • 提案:在没居中实现自动Stringable( https://wiki.php.net/rfc/auto-implement_stringable_for_string_backed_enums )

  • 提案:短闭包( https://wiki.php.net/rfc/auto-capture-closure )

关于PHP更多合并说明可以查看:https://thephp.foundation/blog/2022/06/30/php-core-roundup-3/#merged-prs-and-commits

英文原文地址:https://thephp.foundation/blog/2022/06/30/php-core-roundup-3/

转载地址:https://phpreturn.com/index/a62be479ae1e02.html

原文平台:PHP武器库

版权声明:本文由phpreturn.com(PHP武器库官网)原创和首发,所有权利归phpreturn(PHP武器库)所有,本站允许任何形式的转载/引用文章,但必须同时注明出处。

推荐学习:《PHP视频教程

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

php

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Java 桌面应用开发(JavaFX 实战)
Java 桌面应用开发(JavaFX 实战)

本专题系统讲解 Java 在桌面应用开发领域的实战应用,重点围绕 JavaFX 框架,涵盖界面布局、控件使用、事件处理、FXML、样式美化(CSS)、多线程与UI响应优化,以及桌面应用的打包与发布。通过完整示例项目,帮助学习者掌握 使用 Java 构建现代化、跨平台桌面应用程序的核心能力。

37

2026.01.14

php与html混编教程大全
php与html混编教程大全

本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

19

2026.01.13

PHP 高性能
PHP 高性能

本专题整合了PHP高性能相关教程大全,阅读专题下面的文章了解更多详细内容。

37

2026.01.13

MySQL数据库报错常见问题及解决方法大全
MySQL数据库报错常见问题及解决方法大全

本专题整合了MySQL数据库报错常见问题及解决方法,阅读专题下面的文章了解更多详细内容。

19

2026.01.13

PHP 文件上传
PHP 文件上传

本专题整合了PHP实现文件上传相关教程,阅读专题下面的文章了解更多详细内容。

16

2026.01.13

PHP缓存策略教程大全
PHP缓存策略教程大全

本专题整合了PHP缓存相关教程,阅读专题下面的文章了解更多详细内容。

6

2026.01.13

jQuery 正则表达式相关教程
jQuery 正则表达式相关教程

本专题整合了jQuery正则表达式相关教程大全,阅读专题下面的文章了解更多详细内容。

3

2026.01.13

交互式图表和动态图表教程汇总
交互式图表和动态图表教程汇总

本专题整合了交互式图表和动态图表的相关内容,阅读专题下面的文章了解更多详细内容。

45

2026.01.13

nginx配置文件详细教程
nginx配置文件详细教程

本专题整合了nginx配置文件相关教程详细汇总,阅读专题下面的文章了解更多详细内容。

9

2026.01.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 8.6万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 6.9万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 0.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号