作为世界上最好的语言——PHP 到底好在哪

来自:    更新日期:早些时候
~ 2020年12月26日,PHP 8.0.0 正式版发布,标志着PHP走过了25年的历程。作者使用PHP已有7年,关于“PHP是世界上最好的语言”这一说法,既有赞誉也有戏谑,那么PHP究竟好在哪呢?

先来明确PHP的历史。

我接触过C++, Java, PHP, Javascript, Python, Go等多种语言,虽然不能称得上精通,但多少有些了解。今天,我主要聊聊PHP。

通过以下表格我们可以看出,PHP是一门历史悠久的语言,与Java同属一个年代。C++和Java的版本号较高,这反映了开发者对它们的热情和投入。PHP的表现相对稳健,在2021年初发布了v8版本。PHP的广泛使用催生了HHVM等类PHP语法的虚拟机和能运行PHP的jvm。此外,为了弥补性能短板,还诞生了Opcache、Phalcon、swoole等PHP拓展。可以说,PHP的生态系统是多样化的。

在语言排行榜上,我们可以看到:

排行榜参考:HashMap

PHP的“万物皆是HashMap”的特点。在编码过程中,为了保存不同实体、对象,会用到数组、列表、对象、字典等。在PHP的底层实现中,这些都可以使用php array来实现。phper不需要思考使用哪种数据结构,只需使用php array即可,这大大降低了心智负担,降低了学习门槛。与Java相比,PHP的学习曲线更为平滑,当需要深入时,查看array相关的函数会有新的理解。

透过PHP的源码,我们可以看到array、k-v array、class等底层都是HashTable。这样的内存管理可能有些粗放,但使得PHP的底层数据结构显得单一简洁。相较于Python、Node等脚本语言,PHP在v7版本才引入了Set、Map、Queue等数据结构。PHP的array就像瑞士军刀,是其他语言所缺少的特性,这也是许多phper钟爱PHP的原因之一。

在调试php-fpm程序时,修改代码后刷新页面就能看到效果。这种简单直观的调试体验是PHP独有的,与编译性语言C/C++、Java相比,PHP的在线调试效率更高。

热部署是运维概念。对于线上PHP服务,只需将代码复制粘贴到服务器即可完成更新。这种部署体验简单,任何实习运维都能轻松完成。对于Java、Node、Python等语言,普通运维需要代码打包、上传、重启服务,这增加了工作成本。

当然,这一切都有代价。php-fpm的热部署建立在重复编译之上。随着计算机性能的提高,编译时间不再是瓶颈。DB、IO才是耗时大户。如果真的要避免重复编译问题,可以使用php-cli模式,但调试的第一感觉就是慢。

php-fpm框架在处理请求时会经过compiler、init、dispatch、controller等流程,而php-cli框架则简化了这些流程。

PHP底层是用C编写的,可以说,学习了C之后,学习PHP会更容易。这也是PHP在国内如此受欢迎的原因之一。

对于PHP开发者来说,配置一套PHP开发环境非常快,配合Windows,双击exe,一路点点点就能完成。相比之下,Java、C#等语言的配置更为复杂,可能会让入门者望而却步。

PHP的热部署特点、自动fork子进程处理请求等特性,使得PHP在Serverless领域有着广泛的应用。

PHP将字符串拼接与算数加法运算符区分开来,避免了弱类型语言常见的问题。

总结来说,PHP的学习曲线平坦,语法简单,数据结构单一,降低了使用者心智负担。PHP确实是我心中最好的语言。


作为世界上最好的语言——PHP 到底好在哪视频

相关评论:
  • 19726622752假期新手练习Ph
    贾贺狐会学得更好。Python机器学习 其次,这个项目将教你快速制作原型的宝贵技能。在现实 世界中,如果不简单地尝试它们,通常很难知道哪种模型 表现最好。最后,本练习可以帮助你掌握模型构建的工作流程。例如 ,你将开始练习……清理数据 将其拆分为训练\/测试或交叉验证集 预处理 转型 特征工程 因为你将使用...

  • 19726622752osi七层模型是什么?解释一下好吗?
    贾贺狐它们由低到高分别是物理层(PH)、链路层(DL)、网络层(N)、传输层(T)、会议层(S)、表示层(P)...有一个既存事实,即世界上各种通信子网在性能上存在着很大差异.例如电话交换网,分组交换网,公用数据...表示层的作用之一是为异种机通信提供一种公共语言,以便能进行互操作。这种类型的服务之所以需要,是因为...

  • 19726622752零基础学习Python能学会吗
    贾贺狐学习方法,学习路线,学习资料都可以加 希望新手少走弯路。开始学注意几点:1.代码规范,这本身就是一个非常好的习惯,如果开始不养好好的代码规划,以后会很痛苦2.多动手,少看书,很多人学Python就一味的看书,这不是学数学物理,你看例题可能就会了,学习Python主要是学习编程思想。3.勤练习,学完新...

  • 19726622752哪一种编程语言适合人工智能
    贾贺狐JAVA:使用了LISP中的几个理念,最明显的就是垃圾收集,它的可移植性使它可以适用于任何程序,它还有一套内置类型,Java没有LISP和Prolog高级,又没有C那样快,但如果要求可移植性它是最好的。Python:是一种用LISP和Java编译的语言,按照比较,这两种语言彼此非常相似,仅有一些细小的差别;还有JPython...

  • 19726622752苗文的国际苗文
    贾贺狐青少年和儿童是苗族人生存与发展的最大希望,不少父母便要求他们掌握自己的语言、文字。为了达到这一...在泰国、老挝等国,“国际苗文”也发挥着同样的作用,在某些方面甚至做得更好。因此可以说,“国际苗文...“国际苗文”的形成和作用,在苗族历史上是一个奇迹。这种语言、文化现象在当今世界上的其他少数民族中...

  • 19726622752世界上最好的建筑大学是哪些
    贾贺狐被GraduateArchitecture(世界建筑网)评为世界上最顶尖的十所建筑学院之一。目前该学校只招收硕士或博士研究生,提供高级建筑硕士,城市与技术与开放性建造研究(OTF)三个教育项目,教学语言为英语。该学校的教育活动在一个被改造的遗弃工厂之内,师生比大概1:6,学校学术活动也非常频繁。公开类讲座大概每周...

  • 19726622752初三化学中考总复习知识点汇总
    贾贺狐8、酸碱度的表示方法——PH值 说明:(1)PH值=7,溶液呈中性;PH值<7,溶液呈酸性;PH值>7,溶液呈碱性。 (2)PH值越接近0,酸性越强;PH值越接近14,...22、当今世界上最重要的三大矿物燃料是:煤、石油、天然气。 23、应记住的三种黑色氧化物是:氧化铜、二氧化锰、四氧化三铁。 24、氢气和碳单质有三个相似...

  • 19726622752有关“中文”和“汉语”
    贾贺狐中文和汉语是不同的。中文专业里包括汉语。中文专业具体包括汉语言文学专业和新闻学专业。汉语言文学专业:中国古代文学史、中国现代文学史、中国当代文学史、古代汉语、现代汉语和写作等。新闻学专业:大众传播学、消息写作、中国古代新闻史、现代新闻史和当代新闻史等。汉语(古代汉语和现代汉语)隶属于中文...

  • 19726622752古希腊的语言
    贾贺狐回答:青铜时代的拼音文字 克里特岛和希腊本土的氏族社会,曾产生几种较为复杂的表意文字和拼音文字。这些书写系统之间关系密切。克里特人的线形文字A和亚该亚人的线形文字B,是其中最为突出的两种。这当中,线形文字B又是从线形文字A发展而来——克里特的誊抄人,为了把希腊语所表述的内容记录下来,把...

  • 19726622752梵文是什么文字?
    贾贺狐梵文 (Sanskrit)古印度之标准语文。又称天竺语。即吠陀、梵书、森林书、奥义书及北传佛教圣典所用之语文。属印欧语族。Sanskrit乃源自 sam!skr!ta(完成之意)。我国、日本依据此语言由梵天所造之传说,故称梵语或圣语。相对于一般民间所用之俗语,梵语又称雅语。广义而言,可分为吠陀梵语(Vedic ...

  • 相关主题精彩

    版权声明:本网站为非赢利性站点,内容来自于网络投稿和网络,若有相关事宜,请联系管理员

    Copyright © 喜物网