PHP在冒号数组中使用变量

时间:2016-07-01 13:43:27

标签: php arrays

我似乎无法弄清楚如何使用此数组结构中的变量。我非常熟悉使用关联数组并在其中使用变量值,但冒号结构是我以前从未见过的。

我需要用变量代替“pid”值,而不是硬代码。怎么办呢?

$data = array('methods' => '
[{"method":"main_widget","params":{"pid":"703"}},
 {"method":"bottomline","params":{"pid":"703",
                  "link":"",
                  "skip_average_score":false}}
]', 
'app_key' => 'xxxxxxxxxxxxxxxxxxxxx');

2 个答案:

答案 0 :(得分:4)

只需执行$data['methods'] = json_decode($data['methods'])之类的操作即可将JSON转换为PHP中的对象,或者在本例中为对象数组。

如果要将其用作数组,请将true作为json_decode的第二个参数传递,它会将解析后的JSON字符串作为数组而不是对象返回。

以前的方式,您可以$data['methods']作为object->variable进行迭代,例如

foreach ($data['methods'] as $datum) {
  echo "method: $datum->method" . PHP_EOL;
}

答案 1 :(得分:-1)

使用json_decode获取您通常使用的数组。 $array = json_decode($data['methods']);