首页 >类库下载 >PHP类库 > 一个PHP的小技巧

一个PHP的小技巧

高洛峰
高洛峰原创
2016-10-20 13:49:571146浏览

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

<?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


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关文章

查看更多