$array = [1, 2, 3, 1, 2, 4];
$unique_array = array_unique($array);

print_r($unique_array);
/*
    Array (
        [0] => 1
        [1] => 2
        [2] => 3
        [5] => 4
    )
*/
array_unique(array $array, int $flags = SORT_STRING): array
$array = ['a', 'b', 'c', 'A', 'B', 'C'];
$unique_array = array_unique($array);

print_r($unique_array );
/*
    Array (
        [0] => a
        [1] => b
        [2] => c
        [3] => A
        [4] => B
        [5] => C
    )
*/
$array = [1, 2, 01, 03, '1', '2', '01', '02'];

$sort_regular = array_unique($array); // array_unique($array, SORT_REGULAR)와 동일
/*
 * SORT_REGULAR
 * 데이터 유형을 변경하지 않음
 * 숫자형 문자열는 숫자 값을 숫자 데이터 유형과 비교
 * => '1'은 숫자 값 1과 중복
 * 유효하지 않은 숫자 데이터 유형는 유효한 숫자로 취급하여 변환
 * => 01은 1로, 03은 3으로 변환
*/

var_dump($sort_regular);
/*
	array(5) {
		[0]=> int(1)
		[1]=> int(2)
		[3]=> int(3)
		[6]=> string(2) "01"
		[7]=> string(2) "02"
	}
*/

$sort_numeric = array_unique($array, SORT_NUMERIC);
/*
 * SORT_NUMERIC
 * 숫자 데이터 유형으로 변경해서 비교
 * 유효하지 않은 숫자는 유효한 숫자로 변환
 * => 01은 1로, 03은 3으로 변환
 * 숫자형 문자열 데이터 유형도 숫자 데이터 유형으로 변경해서 비교하기 때문에
 * => '01'은 1로, '03'은 3으로 변환해서 비교
*/

var_dump($sort_numeric);
/*
	array(3) {
		[0]=> int(1)
		[1]=> int(2)
		[3]=> int(3)
	}
*/

$sort_string = array_unique($array, SORT_STRING);
/*
 * SORT_NUMERIC
 * 문자열 데이터로 변경해서 비교
 * 숫자형 문자열는 숫자 값을 숫자 데이터 유형과 비교
 * => '1'은 숫자 값 1과 중복
 * 유효하지 않은 숫자 데이터 유형는 유효한 숫자로 취급하여 변환
 * => 01은 1로, 03은 3으로 변환
*/

var_dump($sort_string);
/*
	array(5) {
		[0]=> int(1)
		[1]=> int(2)
		[3]=> int(3)
		[6]=> string(2)"01"
		[7]=> string(2) "02"
	}
*/
$array = [
	'a' => 'green',
	'b' => 'green',
	'c' => 'orange'
];
$result = array_unique($array);

print_r($result);
/*
	Array (
		[a] => green
		[c] => orange
	)
*/
$array = [
    'a' => 'green',
    'red',
    'b' => 'green',
    'blue',
    'red'
];
$result = array_unique($array);

print_r($result);
/*
    Array (
        [a] => green
        [0] => red
        [1] => blue
    )
*/