zoukankan      html  css  js  c++  java
  • 缓存与组

    <?php
    //组数据量小,每个元素包含数据量也小
    //设置单缓存
    $gkey="1000";
    $skey="100";
    $sdata=array(/*max data*/);
    $a=cache_get($gkey);
    $a[$skey]=$sdata;
    cache_set($gkey,$a);
    
    //删除单个缓存
    $gkey="1000";
    $skey="100";
    $a=cache_get($gkey);
    unset($a[$skey]);
    cache_set($gkey,$a);
    
    //获取单个缓存
    $gkey="1000";
    $skey="100";
    $a=cache_get($gkey);
    $val=$a[$skey];
    
    //删除全部缓存
    $gkey="1000";
    cache_delete($gkey);
    ?>
    <?php
    //每个元素包含数据量大,单元素数量不多
    //设置单缓存
    $gkey="1000";
    $skey="100";
    $sdata=array(/*max data*/);
    $temp_key="your prefix".$gkey.uniqid();
    $gval=cache_get($gkey);
    isset($gval[$skey])&&cache_delete($gval[$skey]);
    $gval[$skey]=$temp_key;
    cache_set($gkey,$gval);
    cache_set($temp_key,$sdata);
    
    //获取单个缓存
    $gkey="1000";
    $skey="100";
    $gval=cache_get($gkey);
    $val=isset($gval[$skey])?cache_get($gval[$skey]):null;
    
    //删除单个缓存
    $gkey="1000";
    $skey="100";
    $gval=cache_get($gkey);
    isset($gval[$skey])&&cache_delete($gval[$skey]);
    
    //删除一批缓存
    $gkey="1000";
    $gval=cache_get($gkey);
    is_array($gval)&&foreach($gval as $v)cache_delete($v);
    cache_delete($gkey);
    ?>
    <?php
    //每个元素数据量大,且包含元素量也非常大
    //split_len 推荐值:
    //    1000 => 1
    //    1000 -100000 =>2
    //    100000 以上 => 3
    //设置单缓存
    $gkey="1000";
    $skey="100";
    $split_len=2;
    $sdata=array(/*max data*/);
    $temp_key="your prefix".$gkey.uniqid();
    $gval=cache_get($gkey);
    $rid=substr(md5($skey),0,$split_len);
    if(isset($gval[$rid])){
        $gkey_prefix=$gval[$rid];
        $ggval=cache_get($gkey_prefix);
        isset($ggval[$skey])&&cache_delete($ggval[$skey]);    
        $ggval[$skey]=$temp_key;
        cache_set($gkey_prefix,$ggval);
    }else{
        $gkey_prefix="your gkey prefix".$gkey.uniqid();    
        $gval[$rid]=$gkey_prefix;
        cache_set($gkey,$gval);
        $ggval=array($skey=>$temp_key);
        cache_set($gkey_prefix,$ggval);
    }
    cache_set($temp_key,$sdata);
    //获取单个缓存
    $gkey="1000";
    $skey="100";
    $split_len=2;
    $gval=cache_get($gkey);
    $rid=substr(md5($skey),0,$split_len);
    if(isset($gval[$rid])){
        $ggval=cache_get($gval[$rid]);
        $val=isset($ggval[$skey])?cache_get($ggval[$skey]):null;    
    }else
        $val=null;
    //删除单个缓存
    $gkey="1000";
    $skey="100";
    $split_len=2;
    $gval=cache_get($gkey);
    $rid=substr(md5($skey),0,$split_len);
    if(isset($gval[$rid])){
        $ggval=cache_get($gval[$rid]);
        isset($ggval[$skey])?cache_delete($ggval[$skey]):null;    
    }
    
    //删除一批缓存
    $gkey="1000";
    $gval=cache_get($gkey);
    is_array($gval)&&foreach($gval as $v){
        $ggval=cache_get($v);
        is_array($ggval)&&foreach($ggval as $vv)
            cache_delete($vv);
        cache_delete($v);
    }
    cache_delete($gkey);
    ?>
  • 相关阅读:
    Stack frame
    How a stack frame works 栈帧的要素与构建步骤
    Symbol Table
    函数调用栈实例研究
    崩溃日志的实例
    符号表的作用和地位
    A C compiler that parses this code will contain at least the following symbol table entries
    前复权是从今天的价格倒推 后复权是从上市价格前推 不复权就是原始K线。
    Thinkphp5+PHPExcel实现批量上传表格数据功能
    PHP 开发API接口签名验证
  • 原文地址:https://www.cnblogs.com/liushannet/p/5346547.html
Copyright © 2011-2022 走看看