【发布时间】:2016-06-11 11:04:32
【问题描述】:
我试图在我的网站上显示数据库条目,但问题是这些条目是这样写的 {"7":"9.90"}。
我只需要这部分:9.90。
有没有办法像这样“过滤”条目?
【问题讨论】:
-
让我们逻辑思考。
{"7":"9.90"}长什么样子?
标签: php mysql arrays filtering
我试图在我的网站上显示数据库条目,但问题是这些条目是这样写的 {"7":"9.90"}。
我只需要这部分:9.90。
有没有办法像这样“过滤”条目?
【问题讨论】:
{"7":"9.90"} 长什么样子?
标签: php mysql arrays filtering
字符串{"7":"9.90"}是JSON字符串,可以用json_decode解码:
$data = '{"7":"9.90"}';
$arr = json_decode($data, true);
// $arr is now a PHP array: array("7" => "9.90")
$value = $arr["7"];
echo $value; // outputs 9.90
如果您不知道密钥(本例中为“7”),但无论如何只想获取值,则可以使用current 函数:
$value = current($arr);
【讨论】:
'{"7":"9.90"}' 为 hash。 perl 中的数组将转换为 JSON [7,9.9]。在 PHP 中会叫什么?
{"7":"9.90"} 的等价物被称为 关联数组,写成 array("7" => "9.90"),(或者,从 PHP 5.4 开始:["7" => "9.90"] )。 JSON [7, 9.9] 的等价物称为 [indexed] 数组,写为 array(7, 9.9) 或 [7, 9.9] (PHP 5.4)。 PHP 的差异很小,两种结构都在内部存储为映射(或哈希)。 Read more.