php递归json类实例
本文实例讲述了php递归json类的实现方法。分享给大家供大家参考。
具体实现代码如下:
<?php
/*
*@anthor:QD
*@time: 2013-09-27
*/
classjson{
private$Arr=array();//传入数组
//构造器
publicfunctionjson($array)
{
if(!is_array($array))returnfalse;
$this->Arr=$array;
}
//解析主函数
publicfunctionMainArr()
{
$arr=$this->Arr;
if($this->TypeArr($arr))
{
$json=$this->NumArr($arr);
}
else
{
$json=$this->IndexArr($arr);
}
return$json;
}
//解析索引数组
publicfunctionIndexArr($arr)
{
$str="";
foreach($arras$k=>$value)
{
if(is_array($value))
{
if($this->TypeArr($value)){$sun=$this->NumArr($value);}
else {$sun=$this->IndexArr($value);}
if(strpos($sun,"}")||strpos($sun,"]"))
{
$str.=""".$k."":".$sun.",";
}
else
{
$str.=""".$k."":"".$sun."",";
}
}
else
{
$str.=""".$k."":"".$value."",";
}
}
$str="{".trim($str,",")."}";
return$str;
}
//解析数字数组
publicfunctionNumArr($arr)
{
$str="";
foreach($arras$value)
{
if(is_array($value))
{
if($this->TypeArr($value)){$sun=$this->NumArr($value);}
else {$sun=$this->IndexArr($value);}
if(strpos($sun,"}")||strpos($sun,"]"))
{
$str.=$sun.",";
}
else
{
$str.=""".$sun."",";
}
}
else
{
$str.=""".$value."",";
}
}
$str="[".trim($str,",")."]";
return$str;
}
//检验一个数组是不是严格数字索引
publicfunctionTypeArr($arr)
{
if(array_values($arr)===$arr)returntrue;
returnfalse;
}
}
?>
希望本文所述对大家的PHP程序设计有所帮助。
热门推荐
10 对患者生日祝福语简短
11 结婚祝福语简短装备
12 周岁祝福语学生文案简短
13 订婚领证祝福语简短精辟
14 导师获奖祝福语大全简短
15 新婚购房祝福语简短精辟
16 牛年祝福语简短的爱人
17 送芒果的祝福语简短
18 送给学长毕业祝福语简短