PHP 8.0.0 Released!

2020-11-27 00:09:45 +08:00
 tyzrj766

https://www.php.net/archive/2020.php#2020-11-26-3

13407 次点击
所在节点    PHP
107 条回复
leonidas
2020-11-27 14:48:11 +08:00
谁来做个性能评测
zjsxwc
2020-11-27 14:53:16 +08:00
@pein #60
php7 开始不就早已支持协程 yield 生成器了吗
mitu9527
2020-11-27 15:01:18 +08:00
@zjsxwc yield 是生成器,本质上是一个迭代器,不是协程。
shellic
2020-11-27 15:16:52 +08:00
据说性能比 PHP7 还要高一些?
Mrxx
2020-11-27 15:45:05 +08:00
php 性能再好,wordpress 都能给你拖下来
zjsxwc
2020-11-27 15:48:55 +08:00
@mitu9527
额,本质上不都一样吗,

当然如果说 python 的 gevent 这种与多进程用起来像的协程(提供了 fork/join ),
那么 php7 确实还没有。

而 swoole 的协程是抄了 golang 的 channel,又是另一种协程了。
mitu9527
2020-11-27 16:28:42 +08:00
@zjsxwc PHP 还没有原生支持协程,目前 PHP 想使用协程,主要是用 Swoole 。另外,我没听说协程在 PHP 中和生成器有啥关系。
Evilk
2020-11-27 17:01:39 +08:00
@pein 同意,感觉鸟哥应该更靠谱一些,如果 PHP 原生支持协程,应该又会回到 2004 的巅峰,哈哈
NoonTime
2020-11-27 17:34:17 +08:00
@Mrxx 鸟哥关于 PHP8 中 JIT 开发历程的博文.统计 Wordpress top50 函数然后 JIT,性能提升 10%
NoonTime
2020-11-27 17:34:28 +08:00
ryh
2020-11-27 17:59:23 +08:00
https://wiki.php.net/rfc/constructor_promotion
这个 rfc 真心不懂为啥这么做,虽然简单了很多,但很容易歧义吧,还是有 10 票反对很说明问题
mitu9527
2020-11-27 18:29:15 +08:00
@ryh 我觉得就是个语法糖,喜欢用就用,不喜欢用就不用,没啥影响的。就比如 PHP 的箭头函数我也不太喜欢,我觉得它没精简到表达式的级别,用起来感觉不太舒服,但有不少人觉得还可以。
konakona
2020-11-27 18:51:00 +08:00
@sagaxu 现在很多都已经容器化,加上 Symfony 系框架的推进,应该很快普及。233
sagaxu
2020-11-27 19:09:42 +08:00
@konakona
@mitu9527
@liuzhaowei55
新项目估计明年就能用起来了,存量项目不是说升就能升的,尤其是那些没有高 unit test 覆盖率的项目。
sagaxu
2020-11-27 19:28:36 +08:00
@Evilk
@pein

php 协程缺乏应用场景,需要 php 协程的公司为什么不选择 go 呢,没有历史包袱的天生支持。

拿 php 写常驻内存 service,需要更好的内存管理,php 现在的 gc 实现简陋,引用计数也不太容易支持多线程,搞不好还得来一个全局解释器锁。
BBCCBB
2020-11-27 19:52:07 +08:00
@sagaxu 如果不用大改就能获取性能提升, php 有协程肯定对现有的 php 项目有利
2kCS5c0b0ITXE5k2
2020-11-27 20:00:39 +08:00
@BBCCBB 就算有协程也不会无缝修改的。 肯定坑很多
meshell
2020-11-27 20:01:01 +08:00
zjsxwc
2020-11-27 21:34:44 +08:00
@meshell

看了一个多小时才看明白,感觉就像,鸟哥在 php5 里面用 yield 生成器,造了个单片机非抢占式多任务系统,php 玩出了操作系统的味道,膜拜鸟哥!
meshell
2020-11-27 22:38:09 +08:00
@zjsxwc 这个是原文也是 PHP 开发组的,作者目前在 PHPstorm 开发组. https://nikic.github.io/2012/12/22/Cooperative-multitasking-using-coroutines-in-PHP.html

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/729674

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX