1. 万能 array/string ,加上一系列 array 的内置函数,什么一维二维转换,排序,提取全部 key ,提取全部 value ,数组合并等一系列业务中对于数组的常用操作都可以用一个内置函数搞定。字符串等操作更方便。 2. 比较优秀的 ORM ,collection 等等。基本不见 sql 代码,只要不是超级复杂必须用原生 sql 的逻辑,只要定义个 model 全都解决了,甚至不定义 model 都行,内置的各种 ORM 方法可以很快的解决一些非常简单的 curd 逻辑。 3. json 处理友好,数组/对象很方便的转成 json ,也能很方便的解析 json 。也跟 php 的弱类型有关,如果是 Go 这种强类型语言还得定义个结构体。当然强类型语言也有好处,但是开发效率确实会慢一点。 4. 无内存泄漏/全部 builtin 类型都是线程安全的,完全不需要考虑什么加锁之类的。没有并发心智负担。 5. 比较现代化的包管理/还算丰富的社区包/扩展,基本 web 常见问题都有对应的包。 6. 比较好的向前兼容,例如你用 php5.4 开发的代码,直接换成 php7 有 99.99%的可能性没有任何问题。 7. lnmp 架构比较简单,运维心智负担低,四五台中配机器抗起几万的 qps 没啥太大压力,性能也还算凑合。 当然 php 也有很多缺点,这里就不讨论了。
主要是十几年前跟 C/C++、java 比,写起来自由方便,无需编译部署简单。 放到现在来说除去市场惯性因素,JS/TS 、Python 这些其实效率更高,[]和{}区分定义对前端来说也更少出现因为某些 phper 辖 JB 乱用 array 导致接口数据定义乱飞的情况