C语言 c++ php mysql nginx linux lnmp lamp lanmp memcache redis 面试 笔记 ppt 设计模式 问题 远程连接

递归函数中清空静态变量

/**
 * 函数中清空静态变量
 * $i 第一次为空,会清空静态变量,下次调用时已经++ ,故不会在清空
 */
function array_multi2single($array, $i = 0) 
{ 
    static $result_array=array(); 
    
    if(empty($i))
    {
        $result_array = array();
    }    
    
    foreach($array as $key=>$value) 
    { 
        if(is_array($value)) 
        { 
            
            $i ++;
            array_multi2single($value, $i); 
        } 
        else  
            $result_array[$key]=$value; 
    } 
    return $result_array; 
} 

$a = array('a'=>array('b'=>'b'));

print_r(array_multi2single($a));


$b = array('a'=>array('bb'=>'bb'));

print_r(array_multi2single($b));

 

posted on 2013-05-30 00:39  思齐_  阅读(1291)  评论(0编辑  收藏  举报