我希望将以下字符串转换为PHP数组:
{ 'Codes': ['01239EEF', '01240EDF'], 'Done' : ['1', '0'] }
我正在尝试将其转换为类似于以下内容的数组:
{[Codes] => {[0] => '01239EEF', [1] => '01240EDF'}, [Done] => {[0] => '1', [1] => '0'}}
我尝试使用json_decode
将Array参数显式设置为true
。但由于某种原因它总是返回NULL
。
答案 0 :(得分:8)
问题在于json使用"
而不是'
{ 'Codes': ['01239EEF', '01240EDF'], 'Done' : ['1', '0'] }
必须是
{ "Codes": ["01239EEF", "01240EDF"], "Done" : ["1", "0"] }
以json_decode
stdClass Object
(
[Codes] => Array
(
[0] => 01239EEF
[1] => 01240EDF
)
[Done] => Array
(
[0] => 1
[1] => 0
)
)
答案 1 :(得分:0)
您可以使用str_replace(',",$string)
,然后使用json_encode
答案 2 :(得分:0)
名称和值必须用双引号括起来
单引号在json_decode
函数
请更改您的字符串
$js_str = '{ "Codes": ["01239EEF", "01240EDF"], "Done" : ["1", "0"] }';
,你的输出就像
object(stdClass)#1 (2) {
["Codes"]=>
array(2) {
[0]=>
string(8) "01239EEF"
[1]=>
string(8) "01240EDF"
}
["Done"]=>
array(2) {
[0]=>
string(1) "1"
[1]=>
string(1) "0"
}
}