Maison  >  Article  >  类库下载  >  一个PHP的小技巧

一个PHP的小技巧

高洛峰
高洛峰original
2016-10-20 13:49:571109parcourir

如何实现一个耗时的函数或者类的方法多次调用时, 第一次进行运算, 以后再调用这个函数时, 直接返回结果?

<?php 

class MyDate
{
    public static function getCurrentDate()
    {
        static $current_date = &#39;&#39;;

        if (!$current_date) {
            echo &#39;only run one time&#39;;
            usleep(200000);
            $current_date  = date(&#39;Y-m-d H:i:s&#39;);
        }

        return $current_date;
    }

    public static function getCurrentDate2()
    {
        usleep(200000);
        echo &#39;run everytime&#39;;
        return date(&#39;Y-m-d H:i:s&#39;);
    }
}

$start = microtime(true);
$i = 5;
while ($i--) {
    MyDate::getCurrentDate();
}
echo microtime(true) - $start;    //200ms

$start = microtime(true);
$i = 5;
while ($i--) {
    MyDate::getCurrentDate2();
}
echo microtime(true) - $start;    //1s


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Articles Liés

Voir plus