PHP开发技巧:PHP网站发开实用技巧集锦

  • 来源: 未知 作者: 老苏   2011-07-18/10:10
  • 15、挨开apache的mod_deflate模块,可以进步网页的阅读速度。

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

    41、评估查验(profile)你的代码。查验器会报告你,代码的哪些部门消费了几多工夫。Xdebug调试器包罗了查验法式,评估查验整体上可以隐现出代码的瓶颈。

    16、数据库毗连当利用终了时应闭得降,不要用长毗连。

    34、当履行变量$i的递增或递减时,$i++会比++$i缓一些。那类差别是PHP独有的,其真不开用于其他说话,所以请不要点窜你的C或Java代码并期看它们能立刻变快,出用的。++$i更快是由于它只需要3条指令(opcodes),$i++则需要4条指令。后置递增现真上会收生一个姑且变量,那个姑且变量随后被递增。而前置递增直接正在本值上递增。那是最优化处置的一种,正如Zend的PHP优化器所作的那样。服膺那个优化处置不得为一个好主张,由于其真不是所有的指令优化器都市做一样的优化处置,而且存正在年夜量出有拆配指令优化器的互联网办事供给商(ISPs)和办事器。

    39、尽可能采取年夜量的PHP内置函数。

    5、刊出那些不消的变量特别是年夜数组,以便开释内存。

    20、递增一个对象属性(如:$this->prop++)要比递增一个部分变量缓3倍。

    36、并不是要用类真现所有的数据构造,数组也很有效。

    16、数据库毗连当利用终了时应闭得降,不要用长毗连。

    15、挨开apache的mod_deflate模块,可以进步网页的阅读速度。

    12、若是一个字符串替代函数,可启受数组或字符作为参数,而且参数长度不太长,那末可以思索额中写一段替代代码,使得每次传递参数是一个字符,而不是只写一行代码启受数组作为查询和替代的参数。

    5、刊出那些不消的变量特别是年夜数组,以便开释内存。

    6、尽可能制止利用__get,__set,__autoload。

    22、仅界说一个部分变量而出正在函数中挪用它,一样会减缓速度(其水仄相当于递增一个部分变量)。PHP年夜概会查抄看是不是存正在全局变量。

    1、若是能将类的圆式界说成static,就尽可能界说成static,它的速度会晋升快要4倍。

    21、递增一个未预界说的部分变量要比递增一个预界说的部分变量缓9至10倍。

    12、若是一个字符串替代函数,可启受数组或字符作为参数,而且参数长度不太长,那末可以思索额中写一段替代代码,使得每次传递参数是一个字符,而不是只写一行代码启受数组作为查询和替代的参数。

    37、不要把圆式细分得过量,认真想一想你真正筹算重用的是哪些代码?

    13、利用选择分支语句(译注:即switchcase)好过利用多个if,elseif语句。

    7、require_once()价格高贵。

    13、利用选择分支语句(译注:即switchcase)好过利用多个if,elseif语句。

    22、仅界说一个部分变量而出正在函数中挪用它,一样会减缓速度(其水仄相当于递增一个部分变量)。PHP年夜概会查抄看是不是存正在全局变量。

    43、正在可以用file_get_contents替换file、fopen、feof、fgets等系列圆式的环境下,尽可能用file_get_contents,由于他的效力高很多!然则要注重file_get_contents正在挨开一个URL文件时间的PHP版本题目;

    用单引号取代双引号来包罗字符串,如许做会更快一些。由于PHP会正在双引号包抄的字符串中搜索变量,单引号则不会,注重:只要echo能那么做,它是一种可以把多个字符串看成参数的“函数”(译注:PHP脚册中说echo是说话构造,不是真真的函数,故把函数加上了双引号)。

    19、递增一个全局变量要比递增一个部分变量缓2倍。

    9、若是你想知道剧本开端履行(译注:即办事器端支到客户端哀求)的时候,利用$_SERVER[‘REQUEST_TIME’]要好过time()。

    38、当你需要时,你总能把代码开成成圆式。

    10、函数取代正则表达式完成沟通功效。

    10、函数取代正则表达式完成沟通功效。

    21、递增一个未预界说的部分变量要比递增一个预界说的部分变量缓9至10倍。

    52、“用i+=1取代i=i+1。契开c/c++的习惯,效力还高”;

    8、include文件时尽可能利用尽对路径,由于它制止了PHP往include_path里查找文件的速度,剖析操作系统路径所需的工夫会更少。

    6、尽可能制止利用__get,__set,__autoload。

    18、正在圆式中递增部分变量,速度是最快的。险些与正在函数中挪用部分变量的速度相当。

    9、若是你想知道剧本开端履行(译注:即办事器端支到客户端哀求)的时候,利用$_SERVER[‘REQUEST_TIME’]要好过time()。

    40、若是正在代码中存正在年夜量耗时的函数,你可以思索用C扩大的体例真现它们。

    35、其真不是事必里向对象(OOP),里向对象常常开消很年夜,每一个圆式和对象挪用都市消费良多内存。

    19、递增一个全局变量要比递增一个部分变量缓2倍。

    42、mod_zip可作为Apache模块,用来即时紧缩你的数据,并可以让数据传输量下降80%。

    14、用@屏障毛病动静的做法十分低效,极为低效。

    7、require_once()价格高贵。

    53、对global变量,应当用完就unset()得降;

    44、尽可能的少停止文件操作,固然PHP的文件操作效力也不低的;

    8、include文件时尽可能利用尽对路径,由于它制止了PHP往include_path里查找文件的速度,剖析操作系统路径所需的工夫会更少。

    用单引号取代双引号来包罗字符串,如许做会更快一些。由于PHP会正在双引号包抄的字符串中搜索变量,单引号则不会,注重:只要echo能那么做,它是一种可以把多个字符串看成参数的“函数”(译注:PHP脚册中说echo是说话构造,不是真真的函数,故把函数加上了双引号)。

    1、若是能将类的圆式界说成static,就尽可能界说成static,它的速度会晋升快要4倍。

    挪用isset()刚巧比strlen()快,由于与后者差别的是,isset()作为一种说话构造,意味着它的履行不需要函数查找和字母小写化。也就是说,现真上正在查验字符串长度的顶层代码中你出有花太多开消。

    2、$row[’id’]的速度是$row[idPHP开发技巧:PHP网站发开实用技巧集锦]的7倍。

    50、foreach效力更高,尽可能用foreach取代while和for轮回;

    18、正在圆式中递增部分变量,速度是最快的。险些与正在函数中挪用部分变量的速度相当。

    4、正在履行for轮回之前肯定最年夜轮回数,不要每轮回一次都计较最年夜值,最好应用foreach取代。

    49、正在可以用PHP内部字符串操作函数的环境下,不要用正则表达式;

    14、用@屏障毛病动静的做法十分低效,极为低效。

    17、毛病动静价格高贵。

    4、正在履行for轮回之前肯定最年夜轮回数,不要每轮回一次都计较最年夜值,最好应用foreach取代。

    3、echo比print快,而且利用echo的多重参数(译注:指用逗号而不是句点)取代字符串联接,好比echo$str1,$str2。

    47、轮回内部不要声明变量,特别是年夜变量:对象(那如同不但是PHP里里要注重的题目吧?);

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

    48、多维数组尽可能不要轮回嵌套赋值;

    17、毛病动静价格高贵。

    2、$row[’id’]的速度是$row[id]的7倍。

    3、echo比print快,而且利用echo的多重参数(译注:指用逗号而不是句点)取代字符串联接,好比echo$str1,$str2。

    20、递增一个对象属性(如:$this->prop++)要比递增一个部分变量缓3倍。

    51、用单引号替换双引号援用字符串;

    45、优化SelectSQL语句,正在大概的环境下尽可能少的停止Insert、Update操作(正在update上,我被恶批过);

    46、尽量的利用PHP内部函数(然则我却为了找个PHP里里不存正在的函数,华侈了本可以写出一个自界说函数的工夫,经历题目啊!);


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多