收藏此站 联系我们 宿迁腾云网络有限公司
全部 网站建设 SEO优化 技术日志
当前位置:网站首页 > 技术日志

PHP+MYSQL优化总结让您的网站如飞一般加速

作者: 腾云网络 . 阅读量:280 . 发表时间:2019-04-12

【1】在循环中判断时,数值判断使用恒等要比等于高效。


【2】在数组中,数组下标是字母时一定要加上单引号或双引号。因为$row['id']的效率是$row[id]的7倍。


【3】不要使用“@”去屏蔽错误输出。用@屏蔽错误消息的做法非常低效。

若你真的想抑制报错,可以通过设置error_reporting来控制,好比栗子中的,行前设置,行后取消即可。


【4】尽量不要在for循环中使用函数,比如for ($x=0; $x < count($array); $x)每循环一次都会调用count()函数。


【5】注销那些不必的变量尤其是大数组,以即开释内存。


【6】数据库连接该使用完毕时当闭掉。


【7】使用挑选分支语句(switch case)佳于使用少个if,else if语句。


【8】尽量使用include/require, 而不是include_once/require_once.

在《高性能PHP应用开发》(下载http://pan.baidu.com/share/link?shareid=4170631476&uk=2016712711)一书中有个测试。

代码:

<?php

require_once("ClassA.php");

require_once("ClassB.php");

require_once("ClassC.php");

require_once("ClassD.php");

<?php

require("ClassA.php");

require("ClassB.php");

require("ClassC.php");

require("ClassD.php");


echo 'Only testing require_once...';

类ABCD四个文件分别为四个空类,分别放在"ClassA.php","ClassB.php","ClassC.php","ClassD.php"四个文件中:

Class A{

}

Class B{

}

Class C{

}

Class D{

}

试用ab命令模拟10万个请求,同时有5个并发。

ab -c 10 -n 100000 localhost/index.php

结果显示 require_once 响应时间为99毫秒,每秒支持100.63个请求

而require响应时间为94.8毫秒,减少5毫秒,同时并发数增加到105.44个。

参考:再一次, 不要使用(include/require)_once http://www.laruence.com/2012/09/12/2765.html

PHP+MYSQL优化总结让您的网站如飞一般加速(图1)

【9】不要重复造车。很多人在重复写着已有的内置function.

现如今的PHP:

- 有2700多个function (现在更多了)

- 80个核心的扩展

- 154个pecl扩展

选择已经存在的用吧,自己搞毛啊!


【10】假如在代码中具有大批耗时的函数,最好能够斟酌用C扩大的方法完成它们。


【11】str_replace函数比preg_replace函数快,但strtr函数的效力是str_replace函数的四倍。


【12】合理运用字符串比较函数:strncmp / strncasecmp 要比 substr 什么的好很多,不管怎样,都比preg_*系列的字符串匹配方法好。


【13】使用echo的多重参数取代字符串衔接。即使用逗号而不是点连接字符串。

例如:

$name = 'THOMAS';

echo 'Hello,My name is ' . $name; //不推荐

echo 'Hello,My name is ' , $name; //推荐,速度更快


【14】不要引入不需要的文件。每个php脚本文件的引入,都会造成zend编译与执行环节。编译耗时远大于执行的时间。


【15】获取时间的方式:请不要一遍遍的调用 time()直接使用 $_SERVER['REQUEST_TIME']即可得到秒级别的时间戳,不必调用函数


【16】 Session 存储。PHP默认是把SESSION存储在一个文件中。把存储session分落在一个目录中,减轻单位间的读写频度。

- 为每个项目设置他们独立的session存储目录

- 利用php.ini的配置 session.save_path=”N;/path”将session存储在多个目录中


【17】 Session不采用文件存储。文件存储不是一个优秀的方案

- mm – 固话的共享内存存储

- apc – 用APC存储、获取、删除

- memcache – 基于内存的存储服务


【18】代码约简单,跑得越快。为啥,因为简单。

(逻辑上的简单)语法技巧 、 没必要的封装 、 一行一方法



标签:php优化 php代码
转载请注明来源:https://www.tyweb.net/news/154.html
现在咨询免费送诊断方案,每天限3名
马上填写资料获取方案
腾云网络产品
网站建设 微信小程序 微商城 APP开发 SEO优化
腾云网络服务
7x24小时售后支持 市内上门服务 免费后台培训 定期回访
关于腾云网络
关于我们
网站建设案例 小程序案例 APP开发案例
联系腾云网络
联系腾云网络
紧急问题处理电话
131-6035-5545 131-6035-5545
131-6035-5545
扫一扫关注腾云网络公众号