我有一个代表JS数组的字符串(在PHP中),并且为了测试目的,希望将它转换为PHP数组以将它们提供给单元测试。这是一个示例字符串
{ name: 'unique_name',fof: -1,range: '1',aoe: ',0,0,fp: '99,desc: 'testing ability,image: 'dummy.jpg'}
我可以在“,”然后在冒号上使用爆炸,但这是相当不优雅的。还有更好的方法吗?
答案 0 :(得分:4)
$php_object = json_decode($javascript_array_string)
这将返回一个对象,其属性对应于javascript数组的属性。如果需要关联数组,请将true作为第二个参数传递给json_decode
$php_array = json_decode($javascript_array_string, true)
还有一个json_encode函数用于其他方式。
答案 1 :(得分:1)
您正在寻找json_decode()。
答案 2 :(得分:0)
<?php
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_dump(json_decode($json));
var_dump(json_decode($json, true));
?>
以上示例将输出:
object(stdClass)#1 (5) {
["a"] => int(1)
["b"] => int(2)
["c"] => int(3)
["d"] => int(4)
["e"] => int(5)
}
array(5) {
["a"] => int(1)
["b"] => int(2)
["c"] => int(3)
["d"] => int(4)
["e"] => int(5)
}