본문으로 바로가기

php 배열에서 항목 검색

php 배열에서 항목 검색

배열은 거의 대부분의 비지니스 로직에서 쓰이는 부분입니다.

 

모를때는 일일이 배열 갯수만큼을 루프문을 돌려서 어떤 특정한 값을 찾곤 했었지만 그럴필요는 없고 php자체에서 지원하는 배열 검색 함수를 활용을 하면 편합니다.

 

arrary_search

특정배열에서 키워드를 찾으면 해당 키워드가 있는 배열 인덱스를 던져 줍니다.

$arr = [ 'AAA','BBB','CCC','DDD','EEE','FFF','GGG'];

$result = array_search( 'AAA', $arr ); => 0

 

사용법은 간단합니다.

그리고 배열에 특정한 값이 들어가 있는지 찾아볼려면 in_array를 사용을 하면 됩니다

 

$arr = [ 'AAA','BBB','CCC','DDD','EEE','FFF','GGG'];

$result = in_array( 'AAA', $arr ); => true or false

 

그 밖에 2차원 배열에서 특정 컬럼명을 가지고 있는 값을 모두 뽑아와서 배열로 만들어주는 array_column

 

$arr = array(
	arr( 'index' => 1, 'name' => 'AAA'),
    arr( 'index' => 2, 'name' => 'bbb'),
    arr( 'index' => 3, 'name' => 'CCC'),
    arr( 'index' => 4, 'name' => 'DDD'),
    arr( 'index' => 5, 'name' => 'EEE'),  
);

$result = array_column( $arr, 'name');

결과 : 
$result[0] AAA
$result[1] BBB
$result[2] CCC
...

배열관련해서 기존 배열 끝에 하나를 추가할려면 array_push를 쓰면 됩니다.

 

array_push(대상배열, 넣을 값)

 

반대로 배열의 마지막 원소를 제거하려면 array_pop