排版及原文丢失补充

修改理由:
此投稿已在 3年前 合并。
标题修改:
标签修改:
内容修改:
Old | New | Differences |
---|---|---|
2 | 2 | |
3 | 3 | ## 新特性 |
4 | 4 | |
5 | 与每个版本一样,PHP | |
5 | 与每个版本一样,PHP 8.1 添加了一些不错的新特性。新特性会在每年的更新中越来越多。 | |
6 | 6 | |
7 | 7 | ### 枚举 RFC |
8 | 8 | … | … |
44 | 44 | |
45 | 45 | ### Fibers RFC |
46 | 46 | |
47 | Fibers — 又叫 ["绿色线程"](https://en.wikipedia.org/wiki/Green_threads) — 是管理并行性的低级机制. 您可能不会直接在您的应用程序中使用它 | |
48 |
| |
49 | 这里有一个使用 | |
47 | Fibers — 又叫 ["绿色线程"](https://en.wikipedia.org/wiki/Green_threads) — 是管理并行性的低级机制. 您可能不会直接在您的应用程序中使用它,但像 Amphp 和 ReactPHP 等框架将大量使用它们。 | |
48 | ||
49 | 这里有一个使用 fibers 的简单例子: | |
50 | 50 | |
51 | 51 | ``` |
52 | 52 | $fiber = new Fiber(function (): void { | … | … |
60 | 60 | $fiber->resume('after resuming'); |
61 | 61 | ``` |
62 | 62 | |
63 | 如果您想读取更多关于 | |
63 | 如果您想读取更多关于 fibers 的信息, 它们能做什么,不能做什么, 你可以阅读 [这篇文章](https://stitcher.io/blog/fibers-with-a-grain-of-salt). | |
64 | 64 | |
65 | 65 | * * * * * |
66 | 66 | … | … |
93 | 93 | |
94 | 94 | |
95 | 95 | |
96 | ### RFC的初始值设定项中出现 | |
96 | ### RFC的初始值设定项中出现 `new` | |
97 | 97 | |
98 | 98 | 此RFC允许您在函数定义中使用关键字 `new` 作为默认参数,也可以在属性参数等地方使用。 |
99 | 99 | … | … |
109 | 109 | |
110 | 110 | * * * * * |
111 | 111 | |
112 | ### 只读的 | |
112 | ### 只读的 rfc 属性 | |
113 | 113 | |
114 | 114 | 类属性可以标记为只读,这意味着它们只能写入一次。 |
115 | 115 | … | … |
132 | 132 | Error: Cannot modify readonly property Post::$title |
133 | 133 | ``` |
134 | 134 | |
135 | 如果您想深入了解有关只读属性的更多信息,可以阅读 | |
136 |
| |
137 | * * * * *
| |
138 |
| |
139 |
| |
140 |
| |
141 | 你想了解更多关于PHP 8.1吗?有 | |
135 | 如果您想深入了解有关只读属性的更多信息,可以阅读 [我的后续文章](https://stitcher.io/blog/php-81-readonly-properties). | |
136 | ||
137 | * * * * * | |
138 | ||
139 | ||
140 | ||
141 | 你想了解更多关于PHP 8.1吗?有 [PHP 8.1之路](https://road-to-php.com/)。在接下来的十天里,你每天会收到邮件覆盖新的PHP 8.1和退出功能;之后你会自动unsubscribed 所以没有垃圾邮件或跟踪。[现在就订阅!](https://road-to-php.com/) | |
142 | 142 | |
143 | 143 | ### 一流的可调用语法RFC |
144 | 144 | |
145 | 现在,您可以通过调用一个可调用对象并将其作为参数传递 | |
145 | 现在,您可以通过调用一个可调用对象并将其作为参数传递 `…`,从该可调用对象生成闭包: | |
146 | 146 | |
147 | 147 | ``` |
148 | 148 | function foo(int $a, int $b) { /* … */ } | … | … |
154 | 154 | |
155 | 155 | * * * * * |
156 | 156 | |
157 | ### RFC | |
157 | ### RFC 中的纯交叉类型 | |
158 | 158 | |
159 | 159 | 您已经了解了[PHP 8.0中的Union类型](https://stitcher.io/blog/new-in-php-8#union-types-rfc), 和交叉类型是一个类似的功能。如果联合类型要求输入为给定类型之一,则交叉类型要求输入为所有指定类型。交叉类型在处理大量接口时特别有用: |
160 | 160 |