PHP 5.6如何将JSON格式字符串转为数组变量?
解决JSON字符串转PHP数组的问题
嘿,你完全不用纠结那种简单逗号分隔字符串的处理方法——你手里的这个字符串是标准的JSON数组格式,PHP有专门的函数直接搞定!
核心解决方案:使用json_decode()
PHP内置的json_decode()函数就是专门用来处理JSON格式字符串的,它能直接把你的JSON数组转成PHP的数组(或者对象,看参数设置)。
给你直接上可用的代码示例:
// 你的原始JSON字符串(这里用2个对象示例,你替换成15个的完整字符串即可) $str = '[{"parousia":null,"proforikos":null,"test":null,"ergasias":null,"telikos":null},{"parousia":null,"proforikos":null,"test":null,"ergasias":null,"telikos":null}]'; // 第二个参数传true,将JSON转成关联数组;不传则返回stdClass对象 $array = json_decode($str, true); // 可以用var_dump打印看看结果 var_dump($array);
额外注意事项
- 确保JSON格式合法:如果你的字符串里有
……这种占位符,记得替换成真实的、语法正确的JSON对象,比如每个对象之间用逗号分隔,最后一个对象后面不要多逗号,否则json_decode()会返回null。 - 排查解析错误:如果转出来是
null,可以用下面的代码排查问题:
if ($array === null) { echo 'JSON解析失败,错误信息:' . json_last_error_msg(); }
这样处理完,你就能得到一个包含15个关联数组的PHP数组了,每个子数组对应原来的JSON对象~
内容的提问来源于stack exchange,提问作者Konstantinos Natsios




