将JS Array的字符串转换为PHP数组

时间:2010-01-26 15:00:25

标签: php javascript

我有一个代表JS数组的字符串(在PHP中),并且为了测试目的,希望将它转换为PHP数组以将它们提供给单元测试。这是一个示例字符串

{ name: 'unique_name',fof: -1,range: '1',aoe: ',0,0,fp: '99,desc: 'testing ability,image: 'dummy.jpg'}

我可以在“,”然后在冒号上使用爆炸,但这是相当不优雅的。还有更好的方法吗?

3 个答案:

答案 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)

json_decode

<?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)
}