PHP字符串处理

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

我从一个API调用中得到如下响应:

我想转换成一个关联数组,其中“状态”和“描述”是关键元素

我尝试了以下爆炸:

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 )