当前位置:首页 > PHP > 正文内容

PHP优化,PHP性能优化

高老师9年前 (2017-06-17)PHP1924

常见的PHP优化方法,让PHP效率更高,抽空更新(很多都是学习网络上的方法,想深度理解建议学C语言。):

  1. 字符串的输出最好使用单引号,不要使用双银行,否则PHP会去找是否存在变量需要解析

  2. 大数组,对象,资源句柄使用完及时进行unset()

  3. 能用系统函数解决的问题尽量不要使用正则表达式,虽然正则表达式逼格高,但是牺牲的是匹配的性能

  4. 数组下标$allres['id']的速度比$allres[id]快很多,网上说是7倍,但是我不知道是为什么7倍

  5. 对象中的方法能使用static最佳,例如我们在编写工具类的时候,无需实例化即可调用

  6. 如果你想知道脚本开始执行(译注:即服务器端收到客户端请求)的时刻,使用 $_SERVER['REQUEST_TIME'] 要好于 time(),我分析的是因为作为超全局变量已经存在信息,我们何必再调用time()

  7. switch case好于使用多个 if,else if 语句,我们无法说明是效率高,但是我比较喜欢的是这种语法,结构清晰,网上也是比较推荐

  8. 用 file_get_contents 替代 file、fopen、feof、fgets 等系列方法,例如微信支付中使用该函数来读取证书内容

  9. $a=$b=1远比$a=1;$b=1高效

  10. PHP在编写mysql语句一定要把关键字大写,例如SELECT   FROM   GROUP  BY等,因为你不大写,程序最终还是转大写,你大写了程序就不用转直接执行,取经自李炎恢老师。

  11. 使用include或者require引入文件请尽量使用硬路径(即绝对地址),避免PHP引擎查找文件影响速度,学习自李炎恢视频。

  12. 数组使用[]创建更节省内存,避免array()函数的消耗

  13. 对 global 变量,应该用完就 unset()掉;

扫描二维码推送至手机访问。

版权声明:本文由高久峰个人博客发布,如需转载请注明出处。

本文链接:https://blog.20230611.cn/post/10.html

分享给朋友:

“PHP优化,PHP性能优化” 的相关文章

php守护进程

php守护进程

<?php /**  * daemonize让当前脚本为守护进程执行  * @param string $callback 匿名函数  */ function daemonize($callback) {...

php端口复用,php socket端口复用

php端口复用,php socket端口复用

第一次听说端口复用是在mixphp最新版本中发现的,mixphp启动监听9501端口,现在作者说可以多开几个进程来执行mixphp,我心里想了下再启动不是会端口冲突嘛,但是却没有问题,于是下载mixphp的源码解读,原来是启动http服务器使用new Co\Http\Server('0.0....

php生成器的send方法详解,php yield send

php生成器的send方法详解,php yield send

【一】.基本用法首先看看官方对send方法的解释:Sets the return value of the yield expression and resumes the generato...

php管道通信

php管道通信

(1).管道是干嘛的?管道是用于进程之间通信的,传播或交换信息(2).管道有几种?(2.1).匿名管道(pipe):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。通常是指父子进程关系。(2.2).高级管道(popen):将另一个程序当做一个新的进程在当前程序进程中...

php pecl设置代理,php pear设置代理

php pecl设置代理,php pear设置代理

pear config-set http_proxy 47.94.200.124:3128 pecl config-set http_proxy 60.216.101.46:32868家里的长城宽带什么都上不去,安装php扩展真麻烦,使用网...

thinkphp6定时任务,tp6定时任务,thinkphp定时任务,php定时任务,php定时器

thinkphp6定时任务,tp6定时任务,thinkphp定时任务,php定时任务,php定时器

本教程使用的定时任务基于EasyTak,EasyTask官方文档:https://gitee.com/392223903/EasyTask(1).安装tp6composer create-project topthink/think tp(2).安装定时任务compos...