使用php怎么将json转换为数组的形式

介绍

这篇文章给大家介绍使用php怎么将json转换为数组的形式,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

代码如下:


类antiTranJson
{
,protected 静态函数jsonToArray (json)美元
,{
,,,如果(! is_string (json)美元| | is_null (json_decode (json美元,真的)))
,,,,,把新NotJsonStringException(& # 39;参数不是一个json字符串# 39;);
,,,美元$ deJson=json_decode (json, true);
,,,返回self:: toArray ($ deJson);
,}

,protected 静态函数stdClassToArray(性病)
,{
,,,如果(is_object(性病)美元)
,,,,,把新NotObjectException (& # 39; params对象# 39;);
,,,(params=get_object_vars美元性病);
,,,返回self:: toArray (params)美元;
,}

,protected 静态函数arrayRToArray (params)
,{
,,,数组$ tmp=();
,,,如果(! is_array (params)美元)
,,,,,把新NotArrayException(& # 39;参数不是数组# 39;);
,,,foreach (params k=祝辞美元美元v)
,,,{
,,,,,tmp美元($ k)=self:: toArray (v)美元;
,,,}
,,,//var_dump (tmp);
,,,返回tmp美元;
,}

,//调用这个方法,包含json的数据均可以被转换
,公共静态函数toArray (params)
,{
,,,数组$ tmp=();
,,,如果(is_string (params美元),,! is_null (json_decode (params美元)))
,,,,,美元$ tmp=self:: jsonToArray (params);
,,,elseif (is_array (params)美元)
,,,,,美元$ tmp=self:: arrayRToArray (params);
,,,//这里注意一下,假美元如参数是一个对象,只有包含的属性是可读取(公共或者临时的对象属性)的时候才能实现转换
,,,elseif (is_object (params)美元)
,,,,,美元$ tmp=self:: stdClassToArray (params);
,,,其他
,,,,,tmp=params美元;
,,,返回tmp美元;
,}

关于使用php怎么将json转换为数组的形式就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

使用php怎么将json转换为数组的形式