PHP递归函数内的静态变量

作者:Matrix 被围观: 2,143 次 发布时间:2015-06-20 分类:兼容并蓄 零零星星 | 一条评论 »

NOTICE:这是一个创建于 540 天前的主题,其中的信息可能已经有所发展或是发生改变。

//静态变量的例子
/**
* 将数组转换为字符
*
* 用于缓存
*
* @param $data
* @return string
*/
function philnaArray2String($data, $returns = ''){
static $t = 1;
$tabType = " ";
$tab = str_repeat($tabType,$t);
$data = (array)$data;
foreach($data as $key=>$value){
if(is_array($value)){
$t++;
$returns .= "$tab'".$key."' => array(\n".philnaArray2String($value)."$tab),\n";
}else{
if(!is_bool($value)){
$value = "'".addslashes($value)."'";
}
$returns .= "$tab'".$key."' => $value,\n";
}
}
$returns = substr_replace($returns,'',-2,-1);
return $returns;
}

说明:
上面php代码中的$t被static修饰,即为静态变量
静态变量在函数执行完毕后不会释放,会继续累加下去
赶脚非常合适在递归函数中用

参考:http://blog.csdn.net/shaerdong/article/details/8545874

本文固定链接:http://www.hhtjim.com/static-variables-within-the-php-recursive-functions.html
Matrix
本文章由 Matrix 于2015年06月20日发布在兼容并蓄, 零零星星分类下,目前没有通告,你可以至底部留下评论。
转载请注明:PHP递归函数内的静态变量-HHTjim'S 部落格
关键字:, ,

有1条评论 »

  1. 大米价格 大米价格 2015-7-4 16:44:48 +0800#1

    PHP 不好弄啊

添加新评论 »

 😛 Sad 忧伤 👿 Smile 笑脸 😳 😀 😯 😮 😕 😎 😆 😡 😈 Roll Eyes 转眼珠 😉 💡 😐 😥 Mr Green 绿脸先生

NOTICE: You should type some Chinese word (like “你好”) in your comment to pass the spam-check, thanks for your patience!