함수 transpose()

1 JavaScript[ | ]

function transpose(rows) {
	var keys = Object.keys(rows[0]);
	return keys.reduce((a, v) => {
		a[v] = rows.map(f => f[v])
		return a
	}, [])
}

var members = [
	{id: 102, name: "Ashley Allen", address: "Seoul"},
	{id: 202, name: "Peter Parker", address: "New York"},
	{id: 104, name: "John Smith", address: "Tokyo"},
];
console.log( transpose(members) );
// {
//   address: ["Seoul", "New York", "Tokyo"],
//   id: [102, 202, 104],
//   name: ["Ashley Allen", "Peter Parker", "John Smith"]
// }

2 PHP[ | ]

function transpose($rows) {
	$result = [];
	$keys = array_keys($rows[0]);
	foreach( $keys as $key ) {
        	foreach( $rows as $row ) $result[$key][] = $row[$key];
	}
	return $result;
}

$members = [
	['id'=>102, 'name'=>'Ashley Allen', 'address'=>'Seoul'],
	['id'=>202, 'name'=>'Peter Parker', 'address'=>'New York'],
	['id'=>104, 'name'=>'John Smith', 'address'=>'Tokyo'],
];
print_r( transpose($members) );

3 같이 보기[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}