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 舞台上祝福语大全简短