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 婚前女儿生日祝福语简短