我有这个Json对象下面,我想提取这些数据并在PHP中输出
{"seat_booked":"A5","0":"A5","1":"A3"}
然后让他们进入这种格式
$seat_booked = "'A5', 'A5', 'A3'";
我该怎么做?
答案 0 :(得分:2)
我希望您使用json_decode()
:
$string = '{"seat_booked":"A5","0":"A5","1":"A3"}';
$decoded = json_decode($string,true);
$resuiredString = '"'."'".implode("','", $decoded)."'".'"';
echo $resuiredString;
<强>结果:强>
"'A5','A5','A3'"
旁注:
我建议你学习变量连接。
答案 1 :(得分:0)
要从php中的json获取对象,可以使用json_decode
解释here。
但是你有另一个问题,你的json错了! 如果你想表示一个单维数组,你至少应该这样做
["A5","A5","A3"]
最后,使用json_decode:
$obj = json_decode('["A5","A5","A3"]');
var_dump($obj);
此外,您可以执行以下操作:
{"0":"A5","1":"A5","2":"A3"}
$obj = json_decode('{"0":"A5","1":"A3", "2": "A5"}', true);
var_dump($obj);
修改强>
如果您试图从json中取回一个对象,或者您只是想从中获取一个字符串,那么您的问题就不是很清楚了。
如果您需要的是字符串,那么您甚至不需要json,您可以通过字符串操作和/或使用正则表达式来完成此操作。
但是为了完整性,如果你需要引用逗号分隔字符串,你可以这样做:
$array = json_decode('["A5","A5","A3"]');
$str = implode("','",$array);
$str = "'" . $str . "'";
var_dump($str);
答案 2 :(得分:0)
另一种解决方案:
$json = '{"seat_booked":"A5","0":"A5","1":"A3"}';
$decoded = array_map(
function($val) {
return "'". $val."'";
},
array_values(json_decode($json, true))
);