PHP 주요레퍼런스

PHP 주요레퍼런스 179

array_map

array array_map ( callback callback, array arr1 [, array ...] ) 배열의 각 원소에 사용자가 정의한 함수를 적용하고 적용한 후의 결과를 배열로 반환한다. arr1배열에서 순차적으로 1개, arr2배열에서 순차적으로 한개 ,... 이런식으로 인자로 적용된 배열 모두에서 순차적으로 1개씩 가지고 와서 미리 정의된 callback 함수에 인자로 사용해 반환된 값을 다시 배열로 반환한다. 그러므로 callback함수의 인자는 array_map에 인자로 사용된 배열의 개수와 동일하다 예제1 예제2 callback 함수 대신 NULL을 입력한경우 반환되는 배열을 값들을 내부 배열로 갖는 다차원인덱싱 배열이 된다.

array_change_key_case

array array_change_key_case ( array input [, int case] ) 배열의 모든 문자열 키를 대문자 또는 소문자로 바꾼다. case에 따라 input 배열 모든 원소의 키를 대문자 또는 소문자로 바꾼다. case가 CASE_LOWER일경우는 소문자로, CASE_UPPPER 경우는 대문자로 바꾼다. 기본값은 CASE_LOWER이다. 문자열이아닌 인덱싱 배열이라면 실행경과는 변함없다. 예제1

array_search

mixed array_search ( mixed needle, array haystack [, bool strict] ) 주어진 값을 갖는 원소가 있는지 검사하고 만일 존재하면 해당원소의 키를 반환한다. haystack 배열에서 needle 값을 갖는 원소를 검색하여 있으면 needle을 값으로 갖는 키를 반환하고 그렇지 않으면 FALSE를 반한다. 만일 검색된 원소가 여러개라면 가장 먼저 검색된 원소의 키 만을 반환하게된다. strict를 TRUE로 지정하면 데이터 및 변수형이 모두 일치하는 원소만을 찾게 된다. 예제1

array_intersect_assoc

array array_intersect_assoc ( array array1, array array2 [, array ...] ) 다른 배열에도 존재하는 원소만으로 구성된 배열을 반환한다. 이때 원소는 키와 값이 모두 일치하는 원소들로 구성된다. 인자로 반듯이 2개 이상을 배열을 받아야 한다. array1 배열에서 다른 배열에는 존재하는 원소만으로 구성된 새로운 배열을 반환한다.이때 array1에서 구성되는 원소는 다른 배열에서 키와 값 모두를 비교하여 일치하는 원소로 구성된다. 이때 첫 번째 배열로부터 추려진 원소는 원래 배열(array1)에서 가지고 있던 키를 그대로 가지게 된다. 예제1

array_intersect

array array_intersect ( array array1, array array2 [, array ...] ) 다른 배열에도 존재하는 원소만으로 구성된 배열을 반환한다. 인자로 반듯이 2개 이상을 배열을 받아야 한다. array1 배열에서 다른 배열에는 존재하는 원소만으로 구성된 새로운 배열을 반환한다.이때 array1에서 구성되는 원소는 다른 배열에서 값만 비교하여 일치하는 원소로 구성된다. 이때 첫 번째 배열로부터 추려진 원소는 원래 배열(array1)에서 가지고 있던 키를 그대로 가지게 된다. 예제1

array_diff_key

array array_diff_key ( array array1, array array2 [, array ...] ) 다른 배열에 없는 키를 갖는 원소만으로 구성된 배열을 반환한다. array_diff_assoc()는 인자로 반듯이 2개 이상을 배열을 받아야 한다. array1 배열에서 다른 배열에는 존재하지 않는 원소만으로 구성된 새로운 배열을 반환한다.이때 array1에서 제거되는 원소는 다른 배열에서 키만 비교하여 일치하는 원소를 제거한다. 이때 첫 번째 배열로부터 추려진 원소는 원래 배열(array1)에서 가지고 있던 키를 그대로 가지게 된다.

array_diff_assoc

array array_diff_assoc ( array array1, array array2 [, array ...] ) 다른 배열에 없는 원소만으로 구성된 배열을 반환한다. array_diff()와는 달리 원소의 키와 값이 모두 일치하는 원소를 제거한다. array_diff_assoc()는 인자로 반듯이 2개 이상을 배열을 받아야 한다. array1 배열에서 다른 배열에는 존재하지 않는 원소만으로 구성된 새로운 배열을 반환한다. 이때 array1에서 제거되는 원소는 다른 배열에서 키와 값을 모두 비교하여 일치하는 원소를 제거하며 하나만 일치하는 것을 제거하지 않는다. 이때 첫 번째 배열로부터 추려진 원소는 원래 배열(array1)에서 가지고 있던 키를 그대로 가지게 된다. 예제1

array_diff

array array_diff( array array1, array array2 [, array ...] ) 다른 배열에 없는 원소만으로 구성된 배열을 반환한다. array_diff()는 인자로 반듯이 2개 이상을 배열을 받아야 한다. array1 배열에서 다른 배열에는 존재하지 않는 원소만으로 구성된 새로운 배열을 반환한다.이때 array1에서 제거되는 원소는 다른 배열에서 값만 비교하여 일치하는 원소를 제거한다. 첫 번째 배열로부터 추려진 원소는 원래 배열(array1)에서 가지고 있던 키를 그대로 가지게 된다. 예제1

array_merge

array array_merge( array array1 [, array array2 [, array ...]] ) 여러개의 배열을 하나의 배열로 합친다. array1 배열 array2 배열 순으로 여러개의 배열을 하나의 배열 합쳐 반환한다. 이때에 이미 동일한 문자열 키를 갖는 원소가 존재하면 나중에 나온 원소가 이전 원소의 값을 대체하게 된다. 그러나 숫자로 된 키를 갖는 인덱싱된 배열인 경우 동일한 키를 갖는다 하더라도 키존 값을 대체하지 않고 새로운 원소로 추가된다. 예제

array_walk_recursive

bool array_walk_recursive( array &array, callback funcname [, mixed userdata] ) 배열의 모든 원소에 미리 정의한 함수를 적용한다. 이 때 배열의 원소가 또 다른 배열을 포함한 경우에는 해당 배열에 대해서도 지정한 함수를 호출한다. array 배열의 모든 원소에 funcname 함수를 적용하여 배열에 반영한다. 이때 미리 선언되야하는 funcname 함수는 반듯이 값과 키를 인자로 갖는 함수로 만들어야 하며 추가 인자를 지정하면 array_walk 함수에서는 userdata로 넘겨서 반영한다. funcname 인자로 받은 값이 변경되는 경우는 참조에 의한 호출 방식을 사용해야하는데 이럴경우 &값과 같이 &을 붙여 참조에 의한 호출임을 명시해야만..