PHP常用的一些优化技巧
PHP常用的一些优化技巧
做为最流行的WEB语言, PHP他的突出优势就是其速度与效率。如果遇到维护原有效率不高的脚本,或者服务器负载较大,以及网络带宽不高等多种影响系统性能的瓶颈时,就需要我们对系统的内部环境经行调优。老杨ecshop二次开发
一:PHP脚本优化
我下面说的几条PHP脚本级优化,你可以在优化时用到它们,这些技巧并不能让PHP运行速度变的更快,而只能使代码稍稍优化一点儿。最重要的是让你了解PHP内在的运行原理。
例子一:
在程序中使用count($array)作为条件循环时的耗时操作。
$birds = array("鹦鹉","麻雀","孔雀","天鹅");
for($i = 0;$i<=count($birds);i++){
............
}
上面的代码每次处理都要执行一遍count()函数,计算数组的长度。
下面我们重写代码
$count = count($birds);
for($i = 0;$i<=$count;i++){
............
}
例子二:
对字符操作时,检查某个字符串是否超出长度。我们很容易的想到的是strlen()函数,但是strlen()函数在使用的时候需要经行几步的操作,如全部小写化、函数查找。
在这样的场合,我们可以使用isset()来代替,以提高代码速度。
if(strlen($var) < 5) { echo "this is test";}
重写后的代码
if(!isset($var{5})) { echo "this is test";}
调用isset()比strlen()函数要快,因为isset()是一种语法结果,而不是函数。在执行的时候不需要PHP引擎对strlen()函数进行小写换换和内部进行函数查找。
例子三:
使用递增或递减时,$i++比++$i稍慢。这点和其他的语言相比,在php中是个特例,不要在C++和java中也使用这个技巧。在php中,$i++比++$i慢的原因是$i++进行了4次计算,而++$i
进行了3次计算。$i++是先申请一个临时变量,然后增加。++$i直接使用原来变量。
例子四
字符串的输出
echo 与 print
print要比echo稍慢一些。理由很简单,不管是否需要,print都会返回一个状态标识,而echo只是简单的输出,不做任何其他的事情。
printf() 这个函数会很慢,建议万不得已的时候不要使用。printf()是在需要进行参数格式化的情况下使用的。
例子五
require 比 require_once 快
从PHP 5.2开始 require 将会比 require_once 快,因为require不会检查所包含的函数或文件是否存在。
PHP常用的一些优化技巧的更多相关文章
- 一起学Hive——总结常用的Hive优化技巧
今天总结本人在使用Hive过程中的一些优化技巧,希望给大家带来帮助.Hive优化最体现程序员的技术能力,面试官在面试时最喜欢问的就是Hive的优化技巧. 技巧1.控制reducer数量 下面的内容是我 ...
- 常用SQL语句优化技巧
除了建立索引之外,保持良好的SQL语句编写习惯将会降低SQL性能问题发生. ①通过变量的方式来设置参数 好:stringsql = "select * from people p where ...
- 常用的7个SQl优化技巧
作为程序员经常和数据库打交道的时候还是非常频繁的,掌握住一些Sql的优化技巧还是非常有必要的.下面列出一些常用的SQl优化技巧,感兴趣的朋友可以了解一下. 1.注意通配符中Like的使用 以下写法会造 ...
- 常用SEO优化技巧
SEO是指搜索引擎优化 搜索引擎优化是一种利用搜索引擎的搜索规则来提高目前网站在有关搜索引擎内的自然排名的方式.SEO的目的理解是:为网站提供生态式的自我营销解决方案,让网站在行业内占据领先地位,从而 ...
- Android群英传知识点回顾——第四章:ListView常用优化技巧
4.1 ListView常用优化技巧 4.1.1 使用ViewHolder模式提高效率 4.1.2 设置项目间分割线 4.1.3 隐藏ListView的滚动条 4.1.4 取消ListView的Ite ...
- WEB前端开发常用的优化技巧汇总
减少HTTP请求次数或者减少请求数据的大小 页面中每发送一次HTTP请求,都需要完成请求+响应这个完整的HTTP事务,会消耗一些时间,也可能会导致HTTP链接通道的堵塞,为了提高页面加载速度和运行的性 ...
- SQL语句常用优化技巧
提高SQL语句的执行效率,最常见的方法就是建立索引,以及尽量避免全表扫描. ①.避免在where子句中使用 is null 或 is not null 对字段进行判断. 如:select id fro ...
- SQL优化技巧
我们开发的大部分软件,其基本业务流程都是:采集数据→将数据存储到数据库中→根据业务需求查询相应数据→对数据进行处理→传给前台展示.对整个流程进行分析,可以发现软件大部分的操作时间消耗都花在了数据库相关 ...
- Java程序性能优化技巧
Java程序性能优化技巧 多线程.集合.网络编程.内存优化.缓冲..spring.设计模式.软件工程.编程思想 1.生成对象时,合理分配空间和大小new ArrayList(100); 2.优化for ...
随机推荐
- 【C语言】函数调用的简单例子
#include<stdio.h> void p1() { printf("******************\n"); } void p2() { printf(& ...
- 猜解数据库(MYSQL)信息
/Less-1/?id=1' and if (length(database())=8,sleep(5),0) --+ 注:http://43.247.91.228:84/Less-1/为靶场地址,发 ...
- Django中 from django.utils import timezone 和import datetime的区别
在现实环境中,存在多个时区,用户之间很有可能存在于不同的时区,并且许多国家都拥有自己的一套夏令时系统,所以如果网站面向的是多个时区用户,只以当前时间为标准开发,便会在时间上产生错误. 为解决这个此类问 ...
- Spring Security教程之Jsp标签(四)
目录 1.1 authorize 1.2 authentication 1.3 accesscontrollist Spring Security也有对Jsp标签的支持的标签库 ...
- centos 6.x 启动过程简介(来自老男孩)
- 夯实Java基础(二十五)——JDBC使用详解
1.JDBC介绍 JDBC的全称是Java Data Base Connectivity(Java数据库连接).是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问(例如MyS ...
- leetcode 0209
目录 ✅ 500. 键盘行 描述 解答 ✅ 905. 按奇偶排序数组 描述 解答 py sorted 参数详解 ✅ 559. N叉树的最大深度 描述 解答 java dfs-like method(r ...
- pytoch 安装
注意替换清华源,否则直接安装速度会很慢. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud ...
- 比较牛X的网站
数学公式编辑与分享网站:https://www.mathcha.io/editor Markdown编辑网站:https://note.youdao.com/web 在线LaTex公式编辑器:http ...
- Update(Stage4):Spark Streaming原理_运行过程_高级特性
Spark Streaming 导读 介绍 入门 原理 操作 Table of Contents 1. Spark Streaming 介绍 2. Spark Streaming 入门 2. 原理 3 ...
