PHP到底有多糟糕?

PHP到底有多糟糕?

PHP语言有20多年的历史,由于一直保持向下兼容。存在很多糟糕的地方,比如:

混乱的函数命名

不友好的Array/String函数,至今数组和字符串的操作都没有实现OO接口

混乱的参数顺序,导致完全记不住一个函数的用法,每次需要查手册或借助IDE

难用的ZendAPI,导致了在应用与内核之间,很难有一个中间层。比如Node.js做的就很好,它提供的C++API可以让其他C++程序员很方便地为Node编写扩展模块。而ZendAPI几乎就是地狱模式,对开发者要求太高了。今年新开发的PHP-X就是为了解决这个问题。

缺乏异步IO网络层,PHP官方只提供了sockets、stream、select等IO函数,无法满足现在大并发时代的需求。所以就有了Swoole这个项目

缺乏对多线程的支持,虽然有一个pthreads项目,但这个连玩具都算不上。多线程需要PHP语言底层进行支持,而PHP设计之初就没考虑过多线程

当然,PHP也有明显的优点,比如其部署对于虚拟主机的友好超过(除了古老的ASP之外的)所有其他主流语言,因此在互联网应用爆发初期就占领了巨大市场,一些世界上最大的网站最初(甚至至今)都是PHP写的,这是其至今屹立不倒的核心原因。

PHP到底有多糟糕?

阅读更多
0.047368s