首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

多维数组递归有关问题

2012-03-03 
多维数组递归问题PHP code//为了实现内容中去除HTML A标签function htmla(&$string){if(is_array($string)

多维数组递归问题

PHP code
//为了实现内容中去除HTML A标签function htmla(&$string)    {        if(is_array($string))        {            foreach($string as $k=>$v)            {                $string[$k]=preg_replace("/<\/?a.*?>/","",$v);                if(is_array($v))                {                    htmla($string[$k]);                }            }        }else{            $string=preg_replace("/<\/?a.*?>/","",$string);        }    }    $test=array(1,2,34,5,array("a"=>"<a href=''>而</a>",1,23,array("df"=>"<a href=''>测试下</a>"),array(23,32)),"b"=>"<a href=''>三</a>");        htmla($test);        var_dump($test);//结果array(6) {  [0] => string(1) "1"  [1] => string(1) "2"  [2] => string(2) "34"  [3] => string(1) "5"  [4] => array(5) {    ["a"] => string(3) "而"    [0] => string(1) "1"    [1] => string(2) "23"    [2] => string(5) "Array" //超过2维就没法转换了。。    [3] => string(5) "Array"  }  ["b"] => string(3) "三"}


[解决办法]
foreach($string as $k=>$v)
{
//$string[$k]=preg_replace("/<\/?a.*?>/","",$v);
if(is_array($v))
{
htmla($string[$k]);
}
else
{
$string[$k]=preg_replace("/<\/?a.*?>/","",$v);
}
}

热点排行