Php recursive json class instance, php recursive json
This article describes how to implement php recursive json classes. Share it with you for your reference.
The specific implementation code is as follows:
Copy codeThe Code is as follows: <? Php
/*
* @ Anthor: QD
* @ Time: 2013-09-27
*/
Class json {
Private $ Arr = array (); // input an array
// Constructor
Public function json ($ array)
{
If (! Is_array ($ array) return false;
$ This-> Arr = $ array;
}
// Parse the main function
Public function MainArr ()
{
$ Arr = $ this-> Arr;
If ($ this-> TypeArr ($ arr ))
{
$ Json = $ this-> NumArr ($ arr );
}
Else
{
$ Json = $ this-> IndexArr ($ arr );
}
Return $ json;
}
// Parse the Index Array
Public function IndexArr ($ arr)
{
$ Str = "";
Foreach ($ arr as $ 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;
}
// Parse the number Array
Public function NumArr ($ arr)
{
$ Str = "";
Foreach ($ arr as $ 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;
}
// Check whether an array is strictly indexed.
Public function TypeArr ($ arr)
{
If (array_values ($ arr) ===$ arr) return true;
Return false;
}
}
?>
I hope this article will help you with PHP programming.