>  기사  >  类库下载  >  약간의 PHP 트릭

약간의 PHP 트릭

高洛峰
高洛峰원래의
2016-10-20 13:49:571131검색

시간이 많이 걸리는 함수나 클래스 메서드를 여러 번 호출할 때 처음으로 작업을 수행하고 나중에 함수를 다시 호출하면 결과가 직접 반환된다는 것을 어떻게 알 수 있을까요?

<?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으로 문의하세요.

관련 기사

더보기