#!/usr/bin/php $data = array(); while (($line = fgets(STDIN)) !== false) { list($key,$value) = explode("\t",trim($line)); $value =& json_decode($value); $value[1] = get_object_vars($value[1]); if( isset($data[$key]) ) { foreach( $value[1] as $k=>$v ) { $data[$key][1][$k] += $v; } } else { $data[$key] = $value; } } foreach( $data as $key => $value ) { echo $key ."\t". json_encode( array($key=>$value) ) ."\n"; }