0

0

为什么在知乎 php 被黑的最惨烈?

php中文网

php中文网

发布时间:2016-06-06 16:41:51

|

5702人浏览过

|

来源于php中文网

原创

在编程话题经常看黑php的,而且也是排名黑最靠前的。php和java都学过,用的感受是web方面,php搭建起来很方便,很多方法直接用;java的xml配置反倒很啰嗦,算不算惊艳?222

回复内容:

作为有8年多的PHP编程经验的老司机,客观说一句,在Web开发领域,PHP是一门非常不错的语言,事实不以人的意志为转移。PHP有它不足的地方,但是它一直在持续完善和发展。

如果大家有留意过《TIOBE世界语言排行榜》,PHP曾经排名更前,2010年的时候,曾经一度排名到第3名,而现在大概在第6名(2016年2月)。

为什么在知乎 php 被黑的最惨烈?

语言排名的下降,个人认为不是因为使用的人变少了,而是领域更细分了,例如新增加的移动端开发,就改变了很多编程语言的占比。

PHP很简单,很容易学习,例如:
(1)屏蔽了内存管理、指针等比较复杂的语言特性。
(2)甚至屏蔽了变量类型的复杂性。
(3)PHP的环境搭建很简单,郎朗上手。
... ...

什么样的东西,能让人印象深刻的记住呢?
对于工作多年的老程序员,我们曾经在大学学习过的《汇编语言》,还能记得多少?(假设不从事相关的工作哈)或者C/C++,如果不从事相关开发,又还记得多少?
但是,如果学习PHP过的人,通常还能记得不少,因为PHP的基本语法压根就没有多少东西哈!


简单的东西,通常不容易被人忘记。

早期,很多人批评PHP的语言特性不完整,例如没有命名空间(Namespace),更早PHP4说面向对象不完整等等。还有一些人,批评弱类型,认为变量类型的隐形转换带来了很多坑,实际上,很可能是他们没有比较全面理解转换的规则。但是,随着PHP5.x系列的发展,对于语言特性层面的批评慢慢变少,因为它逐渐完善了这一块。然后,对于性能的批评又进一步开始增加,不过,随着PHP7的发布,性能获得大幅度的提升。

一个足够简单,而又不断自我完善的东西,通常不会被时代洪流所抛弃的。 世界上只有两种语言,一种是经常被人骂的,另一种是没人用的。 我tm写了一千多字的草稿后才发现是php而不是phd。 很多人喷,一是不了解,为了喷而喷。二来是酸葡萄心理。

PHP的开发者社区风格非常稳健,从php4到php5,再到PHP7,乃至难产的php6版本,php这一路发展下来,语言本身在稳步的前进,同时对向下兼容处理很好。所以整个社区可以一脉相承的发展。

PHP6最然最终没有发布,但其核心的功能也都陆续迁移到了php5.x版本中。
最新刚刚发布的PHP7版本,那也是让人惊艳。我自己实际部署的效果,整个系统只做了一行代码的改动,就无缝迁移到了PHP7版本,系统负载直接降到了小数。这就是生产力。

我相信PHP7的普及会很快,因为确实会给厂商带来巨大的实惠:性能提升,可以减少机器,减少人力,系统稳定性也更好,也可以带来更多的收入。

PHP的手册,评论系统也是非常的完善。很多人黑PHP也仅仅停留在早期的概念上。php是有历史的包袱,存在不一致的地方。但每种语言都有自己的不足。

决定程序优雅的是人,而不是语言。

===================2016年1月26日晚补充=====================
没想到很多人点赞,再补充下我自己使用PHP的经历:

大学的时候曾经学过很多语言,不过最终还是学习PHP比较有成就感,应该是和应用层接触比较紧密,作出的东西有人用,再加上那时候网站刚开始流行,用PHP做个网站,做个聊天室,搭个论坛,很有成就感。就这样一直用起了PHP。

说道这儿,说一下PHP为什么会被喷。因为PHP入门简单,所以从业人员水平良莠不齐,再加上PHP语言本身又比较灵活,缺少语言层面的约束,所以就导致了各种五花八门的写法。再加上各种PHP的开源软件的流行。这些软件是如此的流行,以至于问为什么这样写,回答是:某某软件是这样写的。所以这也确实是造成了PHP的代码普遍比较乱的现象。但这都是十几年前的事情了,新版本的PHP语法也越来越严谨,oop的功能也越来越完善,用PHP一样可以写出简洁优雅的代码出来。所以这时候再来喷PHP,其实就out了。

2004年的时候,和团队成员一起接手了一个老的网站。确实体会到了 PHP代码如果没有好的组织带来的混乱。当时index1.php index2.php index3.php,一堆的文件。花了几个月的时候,把原来的业务逻辑都梳理清楚,然后重新实现。04年的时候还主要是面向过程,那时候使用smarty做页面和应用的分离。后来虽然离开了,但值得自豪的是我们团队当时为这个网站打下了很好的基础,这个网站后来也有很不错的发展。

再后来加入了一家国内的一线互联网公司,一开始做开发。接手了一个老的系统,当年曾经为公司带来几千万年收入的系统,就是用普通的php, mysql主从备份做的架构。后来切换到了后台的全文检索引擎,前端还是用PHP。

这时候发生了一个重大的事故。客户自助系统的数据无法同步到后台的引擎。客户系统那边是java + oracle的架构,客户的下架广告无法正常同步到后台引擎。这个事故直接引发了一系列人员的清理,这是后话。我当时作为引擎的接口人,就用PHP写脚本统计两边状态不同步的列表,让客户系统这边发消息同步。最终把两边的数据同步好。(其实是一件很简单的事情)

后台我受不了半夜鸡叫(搞运维的都知道),我转行去做了自动化测试。写了三年的自动化测试脚本,整理了一系列的自动化测试框架,工具,方法。当然,这些也都是用PHP写的。:)

后台了09年准备创业,10年正式辞职创业,到现在,我们团队用PHP做了三款成熟的开源软件。我们曾经比较过和我们功能类似的一款用其他语言写的软件的代码量:那款软件功能是我们的1/3,代码量比较我们还多。他们系统中的bug和feature的比例很高。我不是想证明哪种语言如何,我只是想证明,PHP语言可以写出精简优雅的代码,而且可以写的很精炼,表现力丰富。

在做这几款软件的过程中,我们也遇到了PHP的一系列的问题:

  • 如何解决全文检索的问题(不依赖第三方搜索引擎)
  • 如何解决计划任务的问题(不依赖操作系统计划任务)
  • 如何用户二次开发无法升级的问题
  • 常见安全问题的防护(xss, sql注入,附件上传,csrf等)
  • 如何用PHP做聊天服务器。(做轻量级的解决方案)
  • 如何解决PHP环境部署问题。

我们都做了比较轻量级(尽量减少第三方依赖)的解决方案。


我们还用ssh + php做了自己服务器的监控系统,用PHP写了各种备份,运维,监控的脚本。


以上的这些工作,PHP都很好的完成了。而且又有了PHP7版本,这个版本真的是让人惊艳,期待鸟哥后面的更快的版本。


这一些其他的语言也都可以实现,也都可以做的很好。所以单纯的争论语言其实没有什么用。每种语言都有应用的场景和价值,脱离这些谈论,其实没有什么意义。

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


建议大家把精力放到怎么赚钱上面来,语言只是工具。决定程序优雅的是人,而不是语言。

Softr Studio
Softr Studio

最简单的无代码web开发平台

下载


===================2016年1月27日早补充=====================

评论有的朋友说,为什么java总是排在第一位呢。我想回答的是:既然java总是排在第一位,为什么还要老是去喷排在后面的PHP呢?这是什么心理在起作用呢?


我在回答这个提问的时候,就知道肯定有其他语言社区的人跳出来,肯定拿优雅说事。我想回答的是,你号称自己优雅,那就优雅呗。为什么还总是靠嘲笑其他语言来抬高自己呢?这是什么心理起作用呢?


真正的实力是不需要靠贬低其他人来证明的。

真正的实力就是用来让其他人来羡慕,嫉妒,恨的。(哈哈,拉仇恨了。)

有些吃饱了没事干的网民,对我们PHP的事情指手画脚。PHP一不输出键盘战士(不然也不会在舆论上被压着打),二不输出饥饿和贫困,三不去折腾你们,还有什么好说的。 内置轮子太多,被认为是走捷径! phper顾着低头码代码,忙着赚钱没空反击别人黑他们,反正他们一打一个$,这得多有钱啊

为什么在知乎 php 被黑的最惨烈?




图的来源忘了,来自zhihuer。 php在哪里被黑的不惨烈? 看成phd了,逃~

相关文章

知乎
知乎

知乎app是广大用户朋友们常用的问答工具,集搜索、问答、社交等服务功能为一体,超多内容随你阅读观看,让你发现更多精彩。有需要的小伙伴快来保存下载体验吧!

下载

相关标签:

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

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

463

2026.02.13

微博网页版主页入口与登录指南_官方网页端快速访问方法
微博网页版主页入口与登录指南_官方网页端快速访问方法

本专题系统整理微博网页版官方入口及网页端登录方式,涵盖首页直达地址、账号登录流程与常见访问问题说明,帮助用户快速找到微博官网主页,实现便捷、安全的网页端登录与内容浏览体验。

135

2026.02.13

Flutter跨平台开发与状态管理实战
Flutter跨平台开发与状态管理实战

本专题围绕Flutter框架展开,系统讲解跨平台UI构建原理与状态管理方案。内容涵盖Widget生命周期、路由管理、Provider与Bloc状态管理模式、网络请求封装及性能优化技巧。通过实战项目演示,帮助开发者构建流畅、可维护的跨平台移动应用。

64

2026.02.13

TypeScript工程化开发与Vite构建优化实践
TypeScript工程化开发与Vite构建优化实践

本专题面向前端开发者,深入讲解 TypeScript 类型系统与大型项目结构设计方法,并结合 Vite 构建工具优化前端工程化流程。内容包括模块化设计、类型声明管理、代码分割、热更新原理以及构建性能调优。通过完整项目示例,帮助开发者提升代码可维护性与开发效率。

20

2026.02.13

Redis高可用架构与分布式缓存实战
Redis高可用架构与分布式缓存实战

本专题围绕 Redis 在高并发系统中的应用展开,系统讲解主从复制、哨兵机制、Cluster 集群模式及数据分片原理。内容涵盖缓存穿透与雪崩解决方案、分布式锁实现、热点数据优化及持久化策略。通过真实业务场景演示,帮助开发者构建高可用、可扩展的分布式缓存系统。

26

2026.02.13

c语言 数据类型
c语言 数据类型

本专题整合了c语言数据类型相关内容,阅读专题下面的文章了解更多详细内容。

29

2026.02.12

雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法
雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法

本专题系统整理雨课堂网页版官方入口及在线登录方式,涵盖账号登录流程、官方直连入口及平台访问方法说明,帮助师生用户快速进入雨课堂在线教学平台,实现便捷、高效的课程学习与教学管理体验。

14

2026.02.12

豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法
豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法

本专题汇总豆包AI官方网页版入口及在线使用方式,涵盖智能写作工具、图片生成体验入口和官网登录方法,帮助用户快速直达豆包AI平台,高效完成文本创作与AI生图任务,实现便捷智能创作体验。

524

2026.02.12

PostgreSQL性能优化与索引调优实战
PostgreSQL性能优化与索引调优实战

本专题面向后端开发与数据库工程师,深入讲解 PostgreSQL 查询优化原理与索引机制。内容包括执行计划分析、常见索引类型对比、慢查询优化策略、事务隔离级别以及高并发场景下的性能调优技巧。通过实战案例解析,帮助开发者提升数据库响应速度与系统稳定性。

53

2026.02.12

热门下载

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

精品课程

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

共137课时 | 12万人学习

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

共6课时 | 11.2万人学习

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

共13课时 | 0.9万人学习

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

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