json转数组

WBOY
WBOY원래의
2016-06-20 12:34:45926검색

{"data":[{"count":"0"},{"count":"0"},{"count":"0"},{"count":"0"},{"count":"4"},{"count":"0"}],"result":0}

这个json怎么转为

{"data":[0,0,0,0,40],"result":0}


回复讨论(解决方案)

是转成这个:{"data":[0,0,0,0,4,0],"result":0}

额,为什么要这么干?是不是用json_decode的时候 出现了object(stdClass)
可以用这个转换

function object_array($array){
  if(is_object($array)){
    $array = (array)$array;
  }
  if(is_array($array)){
    foreach($array as $key=>$value){
      $array[$key] = object_array($value);
    }
  }
  return $array;

网上找的


请问大神,这个东西到底是什么呢?object(stdClass),产生原因是什么呢?谢谢!

或者这样说:
从sql返回的结果集是一个字段:count字段,行数有若干行,例子里是6行。想输出成这个结构:{"data":[0,0,0,0,4,0],"result":0}

$a = '{"data":[{"count":"0"},{"count":"0"},{"count":"0"},{"count":"0"},{"count":"4"},{"count":"0"}],"result":0}';$arr = json_decode($a, true);foreach($arr as $k=>$v){	if($k == 'data'){		foreach($v as $vv){			$res[$k][] = $vv['count'];		}	}else{		$res[$k] = $v;	}}echo json_encode($res);

{"data":["0","0","0","0","4","0"],"result":0}

怎么把字符串“0”改成整数0?
{"data":[0,0,0,0,4,0],"result":0}

$s = '{"data":[{"count":"0"},{"count":"0"},{"count":"0"},{"count":"0"},{"count":"4"},{"count":"0"}],"result":0}';$a = json_decode($s, true);$a['data'] = array_map('current', $a['data']);echo json_encode($a);
{"data":["0","0","0","0","4","0"],"result":0}
如果你不想数字值加引号就
array_walk_recursive($a, function(&$v) {$v= intval($v);});echo json_encode($a);
{"data":[0,0,0,0,4,0],"result":0}

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.