PHP字符串处理
我从一个API调用中得到如下响应: 我想转换成一个关联数组,其中“状态”和“描述”是关键元素 我尝试了以下爆炸:PHP字符串处理,php,string,associative-array,Php,String,Associative Array,我从一个API调用中得到如下响应: 我想转换成一个关联数组,其中“状态”和“描述”是关键元素 我尝试了以下爆炸: explode($str, ",") 但是,我仍然不知道如何才能更快地做到这一点 谢谢如评论中所述,字符串{status:'true',description:'0617971781'}不是有效的json,但是如果您可以修改得到的字符串使其有效,您可以使用json\u decode 可以帮助您将无效的json转换为有效的json // this is a valid json $j
explode($str, ",")
但是,我仍然不知道如何才能更快地做到这一点
谢谢如评论中所述,字符串
{status:'true',description:'0617971781'}
不是有效的json,但是如果您可以修改得到的字符串使其有效,您可以使用json\u decode
可以帮助您将无效的json转换为有效的json
// this is a valid json
$json = '{"status": "true","description": "0617971781"}';
$obj = json_decode($json); //
$array = json_decode($json, true); // force the return type as full array
编辑:添加了普通jane建议的第二个参数选项;)+添加链接以将字符串更改为有效的json您的
json
不是有效的json
。如果您无法控制API
调用,请首先使其有效,然后与API提供程序联系
然后试着这样做:
$json = '{"status": "true","description": "0617971781"}';
$obj = json_decode($json); //
$array = json_decode($json, true);
print_r($array);
输出:
Array ( [status] => true [description] => 0617971781 )
不幸的是,在这种情况下,
json\u decode
将返回NULL
,因为这是无效的json。如果您无法控制正在调用的API,则可以执行一些字符串操作,将此数据转换为有效的json。键名必须包装在“
”中,字符串值也应该使用双引号而不是单引号。您是否可以控制正在调用的此API的代码?或者它是第三方API?不,它是第三方API。不幸的是,我无法控制它。
Array ( [status] => true [description] => 0617971781 )