假设一个php脚本在没有调用任何扩展的情况下执行什么样的操作最慢(效率最低)?
回复内容:
IO操作,数据库、网络、文件
PHP语言的执行效率比较大概如下:
(1)最快的部分,是语言结构部分,例如for、foreach等,他们是语言语法的一部分,不是函数,它们的执行效率是最高的。
(2)比较快的,是PHP自带的原生函数和扩展函数,它们采用C语言实现的函数,效率和C程序处于同一个数量级,也是比较快的,例如各类字符串、数组函数。
(3)最慢的,是PHP程序员自己写的PHP函数,它的效率最低。例如,我们自己使用PHP实现的排序算法函数,和原生和扩展的函数相对,会至少慢一个数量级。
因此,大家说PHP不适合做计算密集型的工作,就是指第三点,但是,如果这个工作采用扩展的形式实现,是不会有这个问题。
不过,在实际应用场景,PHP语言执行效率再慢,也远比网络I/O快得多,瓶颈通常都在各种各样的网络传输和后端Server的耗时上。例如,我们读取一次mysql,网络+执行耗时,通常快的话也需要消耗几十毫秒,但是,几十毫秒对于PHP程序执行来说,它可以轻松完成成千上万次的函数调用。
然而,PHP社区其实还在持续改进PHP语言底层和引擎的实现,也进一步优化PHP代码的语言执行效率。例如PHP7,就是革新性质的突破。
访问互联网,IO是硬伤
数据库,数据库,数据库
不适合执行密集运算
数据库
sleep(10086);
题主一颗追求最慢程序的心好生令我敬佩
Statement:The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn