我的数据库中有一个字符串以及varchar
{"available":"","bind":"0","hours":{"00:00":{"available":"","bind":"0","info":"","notes":"","price":"","promo":"","status":"none"}},"hours_definitions":[{"value":"00:00"}],"info":"","notes":"","price":"100","promo":"","status":"available"}
如何从中提取价格?
答案 0 :(得分:6)
该字符串是有效的JSON数据,因此您需要做的就是解码为数组以供PHP阅读。像这样:
$data = json_decode($string);
$price = $data->price;
要强制它成为数组而不是对象,请将true
传递给json_decode
的第二个参数,如下所示:
$data = json_decode($string, true);
$price = $data['price'];
答案 1 :(得分:0)
对我来说这看起来像JSON,所以步骤非常简单:
1.使用json_decode($response, true)
将JSON转换为数组。
2.视为正常阵列。
因此,以下代码应该可以正常使用
$info = json_decode($jsonCode, true);
$price = $info['price'];
如果您不需要其他变量,价格将存储在$price
或$info['price']
。
json_decode()
的第二个参数意味着它将返回关联数组(就像你在这里的数组)作为数组而不是对象。它通常更有用,但是你总是可以将它设置为false(或者只是将它保留为false,因为false是默认值)。
有关其参数的更多信息,请参阅json_decode's PHP documentation page。