您目前的位置 : 首页 >> 黑羽绿壳蛋鸡养殖 >> 正文

资深站长php优化及高效提速问题小结

日期:2016-1-21(原创文章,禁止转载)

2008-09-05 11:27

来源:互联

编辑:水色皇朝【纠错】人评论

A-A+

怎样开淘宝店 站优化方法 创业如何获得投资

小米note顶配版评测

最新LOL活动

 一、在函数中传递数组时使用return比使用global要高效,比如:

functionuserloginfo($usertemp){$detail=explode(|$usertemp);return$detail;}$login=userloginfo($userdb);

functionuserloginfo($usertemp){global$detail;$detail=explode(|$usertemp);}userloginfo($userdb);

要高效

2、(这个代码用于得到程序目录对应的址推荐使用)

$urlarray=explo合肥癫痫病治疗医院de('/'$HTTP_SERVER_VARS['REQUEST_URI']);$urlcount=count($urlarray);unset($urlarray[$urlcount-1]);$ofstarurl='://'.$HTTP_SERVER_VARS['HTTP_HOST'].implode('/'$urlarray);

这段代码比

$pre_urlarray=explode('/'$HTTP_SERVER_VARS['HTTP_REFERER']);$pre_url=array_pop($pre_urlarray七台河癫痫病医院哪家最好);

要高效

三、在循环中判断时数值判断使用恒等要比等于高效$a=2;$b=2;比如

if($a==$b)$c=$a;

if($a===$b)$c=$a;

高效

4、mysql查询时尽量使用wherein少用limit

limit查多记录的前几条速度很快但是查询最面几条就会慢

使用in.在查询连续性记录非常快非连续性记录第一次运行会略微慢一点但是以后将比较快!

五、NT服务器数据操作稳定性不及unix/linux

六、输出前使用尽量使用ob_start();可以加快输出速度适用NT或nuli/linux对unlix类服务器如果使用ob_start('ob_gzhandler');输出效率将更高

七、判断的时候尽量使用if($a==他的值)否定的时候尽可能使用if(empty($a))由于这样程序运行更快速

#p#分页标题#e#

八、使用不等时!=与效力相当

九、个人经验得使用$a=11111111111111;的效力和$a='11111111111111';相当.并不象书本说的相差很大

十、使用规范的SQL语句会有利于MySQL的解析

11、使用

if($online){$online1=$online;setcookie('online1'$online$cookietime$ckpath$ckdomain$secure);}

COOKIE将马上生效使用

if($online)setcookie('online1'$online$cookietime$ckpath$ckdomain$secure);

COOKIE需要再刷新一次才能生效

12、使用

$handle=fopen($filenamewb);flock($handleLOCK_SH);$filedata=fread($handlefilesize($filename));fclose($handle);

file($filename);

不管在速度还是稳定上都要优秀

十三、截断字符串优化函数(可避免?字符出现)

functionsubstrs($content$length){if(strlen($content)$length){$num=0;for($i=0;$i$length-3;$i++){if(ord($content[$i])127)$num++;}$num%2==1?$content=substr($content0$length-4):$content=substr($content0$length-3);$content.='...';}return$content;}

比如$newarray[1]=substrs($newarray[1]25);

十四、程序中屏蔽大小写

for($asc=65;$asc=90;$asc++){//strtolower()此函数在一些服务器会产生乱码!if(strrpos($regnamechr($asc))!==false){$error=为了避免用户名混乱用户名中禁止使用大写字母,请使用小写字母;$reg_check=0;}}

十五、不使用file();和不使用fget();(不稳定或速度慢)取1数组函数

functionopenfile($filename$method=rb){$handle=@fopen($filename$method);@flock($handleLOCK_SH);@$filedata=fread($handlefilesize($filename));@fclose($handle);$filedata=str_replace(\n\n$filedata);$filedb=explode($filedata);//array_pop($filedb);$count=count($filedb);if($filedb[$count-1]==''){unset($filedb[$count-1]);}return$filedb;}

这个函数虽然代码比较多不过在速度和稳定性上优势很大!

查看更多类似文章

友情链接:

风雨不测网 | 深圳电信宽带申请 | 乱轮一家亲 | 沈阳标牌制作 | 手机卫士和 | 五道口附近电影院 | 新乡市宾馆