웹 개발 메모장
[php] array_walk() 배열의 각 요소에 같은 함수 적용시키기 본문
array_walk() : 배열의 각 요소에 같은 함수 적용시키기
array_walk(배열, 함수)
배열의 각 요소들을 함수의 인자로 넘겨 함수를 배열의 크기만큼 실행시키는 함수입니다.
사용자 정의 함수인 함수는 인자로 ($value, $key)를 받아 처리합니다.
※순서 주의, ($key, $value) 아닙니다. ($value, $key) 입니다.
다음과 같은 전화번호를 저장하는 배열이 있다고 해봅시다.
1 2 3 4 5 6 | $arr_phone = array( 'A' => '01011111111', 'B' => '01022222222', 'C' => '01033333333', 'D' => '01044444444', ); | cs |
위 배열을 아래처럼 변경하고자 합니다.
1 2 3 4 5 6 | $arr_phone = array( 'A' => '010-1111-1111', 'B' => '010-2222-2222', 'C' => '010-3333-3333', 'D' => '010-4444-4444', ); | cs |
각 배열의 요소에 다음의 함수를 적용시켜 해결하려고 합니다.
1 2 3 4 | function setPhoneNumFormat(&$value) { $value = substr($value,0,3)."-".substr($value,3,4)."-".substr($value,7,4); } | cs |
1. 다음과 같이 반복문을 돌릴 수도 있습니다.
1 2 3 4 | foreach ($arr_phone as $key => &$phone) { setPhoneNumFormat($phone); } | cs |
2. array_walk() 를 이용해 적용시킬 수도 있습니다.
1 | array_walk($arr_phone, 'setPhoneNumFormat'); | cs |
'옛날.. > php' 카테고리의 다른 글
[php] 웹사이트 루트 경로 찾기 ($_SERVER['DOCUMENT_ROOT']) (0) | 2018.01.29 |
---|---|
[PHP] 자바와 비교해서 php 맛보기 (0) | 2017.12.25 |
Comments