redis ij

Ҵ   
   ȸ 17855   õ 0    

db_cache의 후속판 redis_cache 입니다.
사용법은 db_cache 함수와 같습니다.
 
function redis_cache($c_name, $seconds=300, $c_code) {
    global $g4;
 
    $redis = new Redis();
    $redis->connect($g4["rhost"], $g4["rport"]);
    $redis->select(0);
    if ($redis->ttl($c_name) > 0)
        return $redis->get($c_name);
    else {
        // $c_code () 안에 내용만 살림
        $pattern = "/[()]/";
        $tmp_c_code = preg_split($pattern, $c_code);
       
        // 수행할 함수의 이름
        $func_name = $tmp_c_code[0];
        // 수행할 함수의 인자
        $tmp_array = explode(",", $tmp_c_code[1]);
       
        if ($func_name == "include_once" || $func_name == "include") {
            ob_start();
            include($tmp_array[0]);
            $c_text = ob_get_contents();
            ob_end_clean();
        } else {
       
        // 수행할 함수의 인자를 담아둘 변수
        $func_args = array();
        for($i=0;$i < count($tmp_array); $i++) {
            // 기본 trim은 여백 등을 없앤다. $charlist = " \t\n\r\0\x0B"
            $tmp_args = trim($tmp_array[$i]);
            // 추가 trim으로 인자를 넘길 때 쓰는 '를 없앤다
            $tmp_args = trim($tmp_args, "'");
            // 추가 trim으로 인자를 넘길 때 쓰는 "를 없앤다
            $func_args[$i] = trim($tmp_args, '"');
        }
        // 새로운 캐쉬값을 만들고
        $c_text = call_user_func_array($func_name, $func_args);
        }
        // 값이 없으면 그냥 return
        if (trim($c_text) == "")
            return;
        // redis의 cache 값을 업데이트
        $redis->setex($c_name, $seconds, $c_text);
        // 새로운 캐쉬값을 return (slashes가 없는거를 return 해야합니다)
        return $c_text;
    }
}

- opencode.co.kr -


Page 1/4
2013-05   17856   Ҵ
2010-06   14929   Ҵ
2011-01   18369   Ҵ
2016-08   10336   Ҵ
2016-08   9253   Ҵ
2016-08   9358   Ҵ
2016-08   70441   Ҵ
2015-10   10792   Ҵ
2014-02   64036   Ҵ
2014-02   16626   Ҵ
2014-02   17672   Ҵ
2013-06   16140   Ҵ
2013-05   17856   Ҵ
2013-05   15617   Ҵ
2013-01   17988   Ҵ
2011-12   19169   Ҵ
2011-12   16487   Ҵ
2011-09   16513   Ҵ
2011-09   15074   Ҵ
2011-06   15148   Ҵ
2011-01   14935   Ҵ
2011-01   17526   Ҵ
2011-01   18369   Ҵ