PHP的优劣势
我们先来看看PHP的优势。近年来,PHP版本的更新逐渐成熟和完善。
的对象编程支持主要包括
(1)namespace处理命名冲突
(2)interface分离实现与接口
(3)traits代码混入(mixin)支持
(4)类型系统限制函数参数、返回值和类别成员类型
(5)完善的依赖管理系统主要由composer实现
支援FFI(foreignfunctioninterface),可方便地与各种C语言库(如TensorFlow)进行交互,大大扩展了PHP能力。
更安全,主要是引入更现代、更安全的密码库libsodium。
随着性能的不断提高,PHP7.4的性能是PHP5.6的3倍左右,比PHP7.0快了近18%。主要性能提升来自PHP7.0的zval重构。PHP7.4也可以通过引入preload特性进一步加快代码的执行速度。PHP8.0还引入了JIT技术,性能也有了很大提高。
那么这些都是php的优点,所以不要忽视php的缺点。
不支持泛型。程序员不能限制PHP组的成员类型。
运行时的类型检查。PHP参数类型检查在代码执行过程中完成,降低了执行效率。
不支持多核。
PHP虚拟机是c语言的while循环,一边读一边执行。如果想满足多核,只能使用多过程或多线程,多线程存在同步问题,多过程存在IPC问题。
PHP本身和扩展都是用C语言开发的。单写PHP代码是不够的。这在一定程度上增加了提高PHP的门槛。