怎么把"phone":"1234567" 改成 "name":"phone","value":"123456"。。
------解决思路----------------------
$s = '{"phone":"1234567"}';[{"name":"phone","value":"1234567"}]
$a = json_decode($s, 1);
foreach($a as $k=>$v) $r[] = array('name' => $k, 'value' => $v);
echo json_encode($r);
------解决思路----------------------
$a = '{"phone":"1234567"}';
$ret = array();
$arr = json_decode($a, true);
foreach($arr as $key=>$val){
array_push($ret, array('name'=>$key,'value'=>$val));
}
echo json_encode($ret);
[{"name":"phone","value":"1234567"}]
------解决思路----------------------
$s="'phone':'1234567'";
$arr=explode(':',$s);
for($i=0;$i<sizeof($arr);$i++){
$item=array('name'=>current($arr),'value'=>next($arr));
break;
}
echo json_encode($item);
{"name":"'phone'","value":"'1234567'"}
------解决思路----------------------
$s = '[{"phone":"18511337033","name":"ggg","id_card":"123321123321"}]';[[{"name":"phone","value":"18511337033"},{"name":"name","value":"ggg"},{"name":"id_card","value":"123321123321"}]]
$a = json_decode($s, 1);
foreach($a as $t) {
$r = array();
foreach($t as $k=>$v) $r[] = array('name' => $k, 'value' => $v);
$res[] = $r;
}
echo json_encode($res);
------解决思路----------------------
改這樣:
$s = '[{"phone":"18511337033","name":"ggg","id_card":"123321123321"}]';
$a = json_decode($s, 1);
foreach($a as $t) {
$r = array();
foreach($t as $k=>$v) $r[] = array('name' => $k, 'value' => $v);
$res[] = $r;
}
echo json_encode(array_pop($res));
[{"name":"phone","value":"18511337033"},{"name":"name","value":"ggg"},{"name":"id_card","value":"123321123321"}]