728x90
반응형
array_map()
배열의 각 요소에 사용자 정의 함수를 적용하여 새로운 배열을 반환
$numbers = [1, 2, 3, 4];
$squared = array_map(function($n) { return $n * $n; }, $numbers);
print_r($squared);
결과
Array
(
[0] => 1
[1] => 4
[2] => 9
[3] => 16
)
array_filter ()
배열에서 조건을 만족하는 값들만 필터링하여 새로운 배열을 반환
$numbers = [1, 2, 3, 4, 5];
$even_numbers = array_filter($numbers, function($n) { return $n % 2 == 0; });
print_r($even_numbers);
결과
Array
(
[1] => 2
[3] => 4
)
응용
$code = "select * from code where code in (101,102,103,104)"; 결과를 가정
$code_101 = array_filter($code, function($data){ return $data['code'] == '101'; });
$code_102 = array_filter($code, function($data){ return $data['code'] == '102'; });
$code_103 = array_filter($code, function($data){ return $data['code'] == '103'; });
$code_104 = array_filter($code, function($data){ return $data['code'] == '104'; });
array_merge()
두 개 이상의 배열을 합쳐서 하나의 배열로 반환
$array1 = [1, 2, 3];
$array2 = [4, 5, 6];
$merged = array_merge($array1, $array2);
print_r($merged);
결과
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
)
array_diff()
첫 번째 배열에서 다른 배열들과 겹치지 않는 값을 반환
$array1 = [1, 2, 3, 4];
$array2 = [3, 4, 5, 6];
$diff = array_diff($array1, $array2);
print_r($diff);
결과
Array
(
[0] => 1
[1] => 2
)
array_column()
다차원 배열에서 특정 열을 추출하여 새로운 배열을 반환
키를 추출한다면 array_keys(array)
$array = [
['id' => 1, 'name' => 'Alice'],
['id' => 2, 'name' => 'Bob'],
['id' => 3, 'name' => 'Charlie']
];
$names = array_column($array, 'name');
print_r($names);
결과
Array
(
[0] => Alice
[1] => Bob
[2] => Charlie
)
array_unique()
배열의 모든 값을 더하여 합계를 반환
$array = [1, 2, 2, 3, 4, 4, 5];
$unique = array_unique($array);
print_r($unique);
결과
Array
(
[0] => 1
[1] => 2
[3] => 3
[4] => 4
[6] => 5
)
728x90
반응형
'IT > PHP | CI' 카테고리의 다른 글
[PHP] $_SERVER['REMOTE_ADDR']의 함정: 실제 사용자 IP를 정확히 파악하는 기술 (0) | 2024.09.10 |
---|---|
[PHP] 쿼리 반복문 없이 효율적으로 실행시키기 (0) | 2024.08.09 |
[PHP] 객체형 배열 값이 존재하는지 확인하는 법 (0) | 2024.07.23 |
[PHP] 포함된 문자 찾기 str_contains(), str_starts_with(), str_ends_with() 및 strpos() (0) | 2024.06.22 |
[PHP/CodeIgniter] ZOOM API 연동하기 (sever-to-sever OAuth) - 2 (0) | 2023.10.13 |