现在的 PHP 生态是否有些过于复杂了?

2024-05-20 14:48:14 +08:00
 higanbana

标题就是我的疑问,还请各位大佬嘴下留情,小人普通码农,混口饭吃,之前写 php 的时候用过一段时间的 swoft ,对 php 常见的生态不算特别了解,但是用了 4-5 年吧,go 火了以后,写了两年 go ,现在手上有个小项目,准备用 php 来操刀(相比 go ,拍黄片还是熟悉的更多),主要是图快和生态,但是不想选择 laravel ,因为项目有网络协议和纯服务端的要求(相比之下有点重了)

swoft 好像没维护了,easyswoole 没用过,听说 hyperf 的语法挺相近的,起了个 3.0 的项目,发现又双叒叕不会 PHP 了,差不多半年多没跟进 php 的框架进度,现在已经演化到 node 的时代了吗?

非引战,纯询问,希望各位佬能给出学习方向已经未来 PHP 的方向,可吹可皮

16718 次点击
所在节点    PHP
125 条回复
james122333
2024-05-21 21:05:13 +08:00
@sun2920989

环境搭建那是小问题 有问题的是 server 在那 rewrite 规则 写的代码也有自己的规则
但没人讲你用 php 一定得要配上这些有的没的 你直接写 socket 不就得了 至于 mq... 你只要连线过去就好了 当然你说你想要效能好需要 plugin 那我劝你不要用流行的系统 那些系统多半不会有安装包 那一堆 mq 也不是什么不可替代品
james122333
2024-05-21 21:10:59 +08:00
@dododada

这还好 外加现在可以强类型了不是这么严重 危险的是老系统
cnbattle
2024-05-21 21:14:13 +08:00
php 的框架都还好,无非是熟悉一下框架的结构 设计理念 封装的功能函数啥的就能出活了
kenvix
2024-05-21 21:56:26 +08:00
@9136347 #5 Laravel 给我一种用 PHP 写 Java 的感觉
meshell
2024-05-21 22:04:31 +08:00
@kenvix symfony 才是 呢
ywisax
2024-05-22 02:23:37 +08:00
有网络协议和纯服务端的要求,比较好的方案是直接用 workerman 自己处理业务。
就单纯处理 tcp/udp 业务,workerman 比其他类似 php 方案舒服太多。
swoole 也行,但是小项目用 swoole 意义不大,协程没优势。

我个人不是很建议 hyperf/easyswoole 之类的框架,因为太乱了。这种乱不是单个代码逻辑的混乱,是整个框架的 roadmap 就不清晰,甚至部分代码版权也有瑕疵。
上这种野生框架,不如用 symfony + swoole runtime 。
meshell
2024-05-22 08:40:34 +08:00
@ywisax 我情愿用 symfony + frankenphp
websong188
2024-05-22 09:20:21 +08:00
之前也是 phper 在搞 swoole 的途中加入了 golang 大军。
现在 swoole 生态怎么样了
ywisax
2024-05-22 11:41:09 +08:00
@meshell frankenphp 太新了
chf007
2024-05-22 12:36:06 +08:00
是比较复杂

概念比较多,用法也比较多,搞 PHP 的谁没经历过与 Apache 、Nginx 的结合? FPM 参数的调优?内置模块的编译?要不要用 Swoole 这种工具?即使现在有 Docker 了,这些也避免不了要关心。

用 Node 的话,装好后,只需要关心 npm install 或 build ,运行直接 node ./xxx.js
mrpzx001
2024-05-22 13:26:44 +08:00
难以想象 hyperf 会无法上手
shiroyuri
2024-05-22 15:58:30 +08:00
自用 webman/workerman 优先于 fpm

要用 fpm 的话,开了 OPcache 也好一些了

感觉 laravel 的问题还是组件多 + 依赖 fpm
fuchish112
2024-05-23 10:48:56 +08:00
laravel 的问题,我觉得是它的设计模式不适合 fpm 模式,反而常驻进程才适合
higanbana
2024-05-24 12:05:14 +08:00
@mrpzx001 难以想象,不动脑思考的家伙
higanbana
2024-05-24 12:06:40 +08:00
首先感谢各个楼层的回答,对题目要求的解非常明了,其实用什么不重要,重要的是他的实用度
mrpzx001
2024-05-24 16:04:34 +08:00
@higanbana hyperf 都玩不转就别假装有脑子了好吧
higanbana
2024-05-25 09:38:47 +08:00
@mrpzx001 回你吧,显得我小气,不回你吧,你还真是自我感觉良好

问的问题是关于生态是否过于复杂?拿 hyperf 3 举了个例子

你上来直接就无脑吹,我懂,惜字如金,毕竟天天四处嘎喊对你来说就好比锦衣卫,楼层都在讨论问的问题,你就跟不带脑子一样,进来有事无事打一杆子,我生怕误会了你,点进你的个人页,你还是个惯犯

到底是 V2EX 回复需要货币,你没有,还是因为你确实就是个 e 人

你非要说 hyperf 举例子,我在上面楼层也举例子了,对不起,我能力有限,文档不清不楚,示例模模糊糊,我不知道这是 php 的问题,还是框架的问题,你要是真的想为 hyperf 扛旗,你至少应该给他一个公正的名义,而不是一上来就在各种提到他的地方无脑招黑
mrpzx001
2024-05-25 14:00:20 +08:00
@higanbana 回你吧,显得我小气,不回你吧,你还真是自我感觉良好
"难以想象 hyperf 会无法上手",本来是中性的一句话,感觉奇怪而已,你张嘴就是不动脑思考,现在又来无脑吹,我吹啥了? “难以想象 hyperf 会无法上手” 这么一句浅显易懂的中文你能脑补出那么多东西? 还什么点进主页是个惯犯,我主页有啥问题? 你能从我主页看出来无脑吹 hyperf ? 我在 V2EX 发那么寥寥几次评论需要什么货币?
higanbana
2024-05-25 17:43:12 +08:00
@mrpzx001 几个字都要学复读机一样对照一下,我也不知道该说啥了,翻看所有楼层,各种讨论的都有,问题问的是现在 php 的生态环境,各种框架更新速度快,文档跟不上、内卷来内卷去,以及我自己的环境和遇到的问题,你开篇回复就是一句“难以想象 hyperf 会无法上手”,我翻来覆去的想,都想不懂怎么才算带脑子回答

- “毕竟天天四处嘎喊对你来说就好比锦衣卫,楼层都在讨论问的问题,你就跟不带脑子一样,进来有事无事打一杆子,我生怕误会了你,点进你的个人页,你还是个惯犯”

本来也没什么,看你主页没啥问题,十个问题九个 hyperf ,看的出来,你是一位忠实的拥护者,我确实想的多了,回复你就是浪费彼此的时间,装看不见完事儿,谁让我是个 I 人呢

- “到底是 V2EX 回复需要货币,你没有,还是因为你确实就是个 e 人”

提问的艺术也好,回答的方式也罢,开放式环境,你看到一个问题,愿意回复,我本身就是感谢的,短短几个字解答不了提问的疑惑,我能怎么想,“键盘侠”,“喷子哥”,还是因为这特殊的规则你发不出这么多字,没办法

如果我真诚的留言不能让你消气而是让你破防,那是我的问题,至于带不带脑子这件事情我觉得你愿意当好心人没人拦你,这本来就是一个开放的环境,你阴阳怪气还不让别人 BB ,那我无话可说,我也不会回复你了,本着负责任的态度,秉承着包容的心态,大家互看不爽,干脆就别看
mrpzx001
2024-05-25 18:51:58 +08:00
@higanbana 那你别回了,我回最后一条。
点开我的主页总共有三页,搜索 hyperf ,总共只搜到 4 次,实在不知道你所谓的“十个问题九个 hyperf”从何而来,除了 hyperf 我也提过 workerman/webman ,想必你是选择性忽略的了。
放心罢,我一点也没破防,倒是你要注意身体了。
别回了,你不回,我就不会点开这个帖子,也就不会气到你了。

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

https://www.v2ex.com/t/1042291

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

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

© 2021 V2EX