함수 unique_array_by_value()

Jmnote (토론 | 기여)님의 2018년 2월 3일 (토) 17:44 판 (→‎PHP)


1 개요

함수 unique_array_by_value()

2 PHP

function unique_array_by_value($rows, $column, $overwrite=false) {
	$arr = [];
	foreach( $rows as $row ) {
		if( !$overwirte && array_key_exists($row[$column],$arr)) continue;
		$arr[$row[$column]] = $row;
	}
	return array_values( $arr );
}
$revisions = [
['user'=>'A','timestamp'=>'2018-01-15T10:55:04Z'],
['user'=>'B','timestamp'=>'2017-07-14T17:08:00Z'],
['user'=>'C','timestamp'=>'2016-12-27T05:48:18Z'],
['user'=>'B','timestamp'=>'2016-03-29T05:00:16Z'],
['user'=>'A','timestamp'=>'2015-09-28T08:06:25Z'],
];

print_r( unique_array_by_value($revisions, 'user') );
# Array
# (
#     [0] => Array
#         (
#             [user] => A
#             [timestamp] => 2018-01-15T10:55:04Z
#         )
#     [1] => Array
#         (
#             [user] => B
#             [timestamp] => 2017-07-14T17:08:00Z
#         )
#     [2] => Array
#         (
#             [user] => C
#             [timestamp] => 2016-12-27T05:48:18Z
#         )
# )

print_r( unique_array_by_value($revisions, 'user') );
# Array
# (
#     [0] => Array
#         (
#             [user] => A
#             [timestamp] => 2015-09-28T08:06:25Z
#         )
#     [1] => Array
#         (
#             [user] => B
#             [timestamp] => 2016-03-29T05:00:16Z
#         )
#     [2] => Array
#         (
#             [user] => C
#             [timestamp] => 2016-12-27T05:48:18Z
#         )
# )

3 같이 보기

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