배열 변환 함수
array_map, array_filter 및 array_reduce를 적용합니다.
배열 변환 함수은(는) CoddyKit의 무료 PHP Academy 강의입니다. 이것은 4개 중 4번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 PHP Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. PHP Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
함수형 배열 변환
PHP는 명시적인 반복문 없이 배열을 변환할 수 있는 강력한 고차 함수를 세 가지 제공합니다:
array_map()— 각 요소 변환array_filter()— 검사에 통과한 요소 유지array_reduce()— 하나의 값으로 축약
array_map()
모든 요소에 콜백을 적용하고 새 배열을 반환합니다:
<?php
$prices = [10, 20, 30, 40];
$doubled = array_map(fn($p) => $p * 2, $prices);
print_r($doubled); // [20, 40, 60, 80]
// Multiple arrays
$a = [1, 2, 3];
$b = [10, 20, 30];
$sums = array_map(fn($x, $y) => $x + $y, $a, $b);
print_r($sums); // [11, 22, 33]array_filter()
콜백 조건을 충족하는 요소를 유지합니다. 콜백이 없으면 거짓으로 취급되는 값을 제거합니다:
<?php
$numbers = [1, 2, 3, 4, 5, 6];
$evens = array_filter($numbers, fn($n) => $n % 2 === 0);
print_r($evens); // [1=>2, 3=>4, 5=>6] — keys preserved!
$reindexed = array_values($evens); // re-index
$mixed = [0, 'hello', '', null, false, 42];
print_r(array_filter($mixed)); // [1=>'hello', 5=>42]array_reduce()
콜백을 누적해서 적용하여 배열을 하나의 값으로 축약합니다:
<?php
$cart = [
['name' => 'Widget', 'price' => 10],
['name' => 'Gadget', 'price' => 25],
['name' => 'Doohickey', 'price' => 5],
];
$total = array_reduce($cart, fn($carry, $item) => $carry + $item['price'], 0);
echo $total; // 40변환 연결
<?php
$scores = [45, 80, 30, 90, 55, 70];
$passingAvg = array_sum(
array_filter($scores, fn($s) => $s >= 50)
) / count(array_filter($scores, fn($s) => $s >= 50));
echo $passingAvg; // 74.75키와 함께 사용하는 array_map
array_map은 키를 전달하지 않습니다. 키와 값이 모두 필요할 때는 array_walk를 사용합니다:
<?php
$prices = ['apple' => 1.0, 'banana' => 0.5, 'cherry' => 2.0];
$formatted = [];
array_walk($prices, function($price, $name) use (&$formatted) {
$formatted[$name] = '$' . number_format($price, 2);
});
print_r($formatted);array_chunk()
배열을 지정한 크기의 청크로 나눕니다:
<?php
$items = range(1, 10);
$batches = array_chunk($items, 3);
print_r($batches);
// [[1,2,3], [4,5,6], [7,8,9], [10]]array_combine()
키 배열과 값 배열을 결합하여 연관 배열을 만듭니다:
<?php
$keys = ['name', 'age', 'city'];
$values = ['Alice', 30, 'London'];
$person = array_combine($keys, $values);
print_r($person);
// ['name'=>'Alice','age'=>30,'city'=>'London']array_zip과 array_map
PHP에는 기본 제공 zip 함수가 없지만 array_map(null, ...)을 사용하면 zip과 비슷한 구조를 만들 수 있습니다:
<?php
$names = ['Alice', 'Bob'];
$scores = [90, 85];
$zipped = array_map(null, $names, $scores);
print_r($zipped);
// [['Alice', 90], ['Bob', 85]]array_map의 키 보존
단일 배열에 사용하면 array_map은 키를 보존합니다. 다시 인덱싱하려면 array_values를 사용합니다:
<?php
$assoc = ['a' => 1, 'b' => 2, 'c' => 3];
$result = array_map(fn($v) => $v * 10, $assoc);
print_r($result);
// ['a'=>10, 'b'=>20, 'c'=>30] — keys preservedarray_sum과 array_product
숫자 배열을 빠르게 축약 계산할 때 사용하는 도우미 함수입니다:
<?php
$nums = [1, 2, 3, 4, 5];
echo array_sum($nums); // 15
echo array_product($nums); // 120 (1*2*3*4*5)
// Works with floats too
$prices = [1.5, 2.5, 3.0];
echo array_sum($prices); // 7.0빠른 확인
각 요소에 콜백을 적용하고 새 배열을 반환하는 함수는 무엇입니까?
복습: 배열 변환 함수
요약:
array_map()— 각 요소를 새 배열의 요소로 변환합니다array_filter()— 조건식에 맞는 요소만 유지합니다array_reduce()— 하나의 누적 값으로 접습니다array_chunk()— 하위 배열로 나눕니다array_combine()— 키와 값으로 연관 배열을 만듭니다array_sum/product()— 숫자를 빠르게 축약 계산합니다
자주 묻는 질문
“배열 변환 함수” 강의는 무료인가요?
네 — “배열 변환 함수” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 PHP Academy 강의 전체를 잠금 해제할 수 있습니다. PHP Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“배열 변환 함수”에서 뭘 배우나요?
array_map, array_filter 및 array_reduce를 적용합니다. 브라우저에서 직접 실행하는 실습 코드로 PHP Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
PHP Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 PHP Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 4번째 강의입니다.
“배열 변환 함수” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 PHP Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 PHP Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 인덱스 배열과 연관 배열
- 다차원 배열
- 배열 정렬과 검색
- 배열 변환 함수