我正在从数据库中获取数据并获取json结果。结果是这样的。
[{\"product\":\"AAAAAA\"},{\"product\":\"WWWWW\"}] .
我正在尝试使用 preg_replace 函数删除 slace。但它不起作用。
preg_replace('/[^A-Za-z0-9\-]/', $string);
我的sql查询是。
$user1 = $wpdb->get_results("select product,checked_by,date(submit_date) from diary_user_form_storage where DATE(submit_date) = CURDATE() ;");
foreach ($user1 as $key => $value) {
json_decode($value->product);
echo $result=$value->product;
}
输出结果为
[{\"product\":\"AAAAAA\"},{\"product\":\"WWWWW\"}][{\"product\":\"FFFF\"},{\"product\":\"ASSS\"}]
我想解码这个 json 并尝试获取键值。任何帮助
最佳答案
首先你不需要删除反斜杠..
您应该为 json_decode 提供 bool $assoc = true;
所以它将返回一个关联数组
示例:
$json = "[{\"product\":\"AAAAAA\"},{\"product\":\"WWWWW\"}]";
$array = json_decode($json, true);
var_dump($array);
$user1 = $wpdb->get_results(
"select product,checked_by,date(submit_date) from diary_user_form_storage where DATE(submit_date) = CURDATE() ;
");
$jsonString = "";
foreach ($user1 as $key => $value) {
$productString = stripslashes($value->product);
$product = json_decode($productString, true);
var_dump($product): // array of key and value
echo $result=$value->product;
}
关于php - 我正在尝试从 json 打印键的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46681026/