程序员届素来有一个笑话,倘若有人在程序员群里大喊一声“PHP是最好的语言”必定会被群起而攻之。
因为PHP简单、容易上手,因此非常多初入行搞网站的程序员,以及一块刚起始起步的小网站,都是从PHP起始研发起来的。
那样为何有非常多貌似技术略有小成的程序员,提起PHP来,都会是满脸不屑的表情,仿佛是本科毕业生看到了初中生的情形。那样问题来了,PHP到底是怎么样一种语言,它到底适合不适合做大型网站呢?PHP程序员,到底应该被鄙视吗?
首要咱们先放结论:PHP非常适合做网站,然则并不适合做WEB系统。
讨论一门技术,咱们必定要认识一门技术的应用行业,每门技术都有自己善于的空间,亦有自己的弱点,编程中的各类要素参差不齐,有的需求安全,有的需求稳定,有的需求快速研发,有的需求简洁明了,因此呢,各样语言的侧重点不同样,好的程序员,应该依据各类语言的特点,随心所欲的在适当的时候,运用合适的技术。能够最佳的满足多要素的需要。
那样为何PHP适合做网站呢?咱们先来瞧瞧PHP是什么,它的定位是什么。PHP(Hypertext Preprocessor),即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言、python类似,php的专业便是用来写网站的。它的研发速度快,消耗系统资源少,周期短,上手容易,成本亦很低。因此呢,PHP很适合有些后台交互很少的“网站”,即单纯给用户展示有些信息之类的简单脚本网站。
然则当WEB系统繁杂起来,PHP的弱点就表示出来了。
首要是PHP的安全性,PHP最为人所诟病的一点便是针对缺少针对SQL预处理支持的框架,引起PHP很容易被SQL注入。在2019年的开源代码漏洞报告中,PHP漏洞占据了27%,仅次于古老的C语言。而PHP众多模块的线程不安全性,更加是加剧了人们针对PHP安全性的担忧。因此呢,注重安全性的WEB系统很难采用PHP这种针对安全支持偏弱的脚来来做。
其次是PHP的性能,尽管PHP7的性能略有提高,然则依然比Java、C#等重型语言慢了20倍以上,而比C、C++、GO更加是慢了60倍以上,差劲的性能表现,使得PHP很难在高并发的重要性日益明显的互联网世界里占据主流地位。而这亦是非常多初期运用PHP的大型互联网机构,如谷歌、脸书等,后来都弃用了PHP。
第三是PHP针对递归的不良支持,递归是非常平常的一种算法,在编程中,非常多地区会海量运用递归。然则PHP针对密集数据运用了栈方式,而不是运用堆方式,这就引起它针对递归函数的的数量限制比其它语言少非常多。这就引起了有些功能用PHP实现起来会存在非常多问题。
因此呢,这些缺陷的存在,使得PHP并不适合做一个繁杂的WEB系统,然则此刻大型的互联网机构,采用的都是微服务架构,各样语言实现的微服务都能够存在于WEB系统其中。因此呢,认识各样技术的能力和弱点,在区别的业务类型中运用合适的技术,是每名程序员都要把握的必须技能。
|