解决方案 »
- 关于PHP字符与数组的疑问
- PHP中遇到的openssl.dll的问题~~请教各路大神啊啊啊啊~~~
- PHP输出杨辉三角的问题
- 抓取的数据为什么有时候会多出一行字符,难道是fsocket的bug?
- 留言本提交页面的问题?求助
- 我等了10分钟。为什么SESSION就是不失效?!!!!疯了啊。。。SAVE ME PLEASE!!!
- PMS beta1.0 (测试版)发布
- 大家过来帮忙看看这是怎么回事??
- 请问各位大虾们,我的下面代码为什么不能修改数据。
- 哪里有支持PHP和数据库的免费主页申请
- include文件,类or函数的相对路径是实例化页面还是文件页面?
- 请问$_FILES 是否可以伪造,应该注意哪些安全问题;
foreach($a as $k=>$v) $r[] = array('name' => $k, 'value' => $v);echo json_encode($r);
[{"name":"phone","value":"1234567"}]
$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'"}
$result = get_js_array($sql);
$a = json_decode($result);
foreach($a as $k=>$v) $r[] = array('name' => $k, 'value' => $v);
echo json_encode($r);
echo $r;
我是这么改写的。 但是我查出来以后就变成这样了
[{"name":0,"value":{"phone":"18511337033","name":"ggg","id_card":"123321123321}}]Array我的get_js_array()是这么写的function get_js_array($sql){
$result = mysql_query($sql);
$arr = array();
while($row = mysql_fetch_array($result, MYSQL_ASSOC)){
$arr[] = $row;
}
$js = json_encode($arr);
mysql_free_result($result);
mysql_close($conn);
return $js;
}
怎么修改
$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);
[[{"name":"phone","value":"18511337033"},{"name":"name","value":"ggg"},{"name":"id_card","value":"123321123321"}]]
。。现在还有个需求。。 就是怎么做才可以输出出来的不是两个[[{"name":"111","value":"222" }]],
只输出一个方括号[{"name":"111","value":"222" }]
。。现在还有个需求。。 就是怎么做才可以输出出来的不是两个[[{"name":"111","value":"222" }]],
只输出一个方括号[{"name":"111","value":"222" }]改這樣:
$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"}]