데이터베이스에서 받아오는 stdClass나 다차원 배열에서 값으로 키를 찾을 일이 종종 있다.
php array_search 와 array_column을 조합하면 쉽게 가져올 수 있다.
PHP array_search
주어진 값으로 배열을 검색하여 성공시 키를 반환하고 실패시 false를 반환하는 함수
PHP array_column
배열의 key로 검색하여 해당 키값에 해당되는 값을 배열로 반환하는 함수
사용예시
2차원 배열의 경우
// array
$language_list = array(
array(
"idx" => 1,
"name" => "ENG",
"code" => "en"
),
array(
"idx" => 2,
"name" => "KOR",
"code" => "ko"
),
array(
"idx" => 3,
"name" => "JAP",
"code" => "ja"
)
);
$language = 'en';
$key = array_search($language, array_column($language_list, 'code')); // $key = 1
echo $list[$key]['name']; // print : ENG
stdClass 경우
// stdClass 경우
// $language_list
array(3) {
[0]=> object(stdClass)#75 (3) {
["idx"]=> string(1) "1"
["name"]=> string(3) "ENG"
["code"]=> string(2) "en"
}
[1]=> object(stdClass)#76 (3) {
["idx"]=> string(1) "2"
["name"]=> string(3) "KOR"
["code"]=> string(2) "ko"
}
[2]=> object(stdClass)#73 (3) {
["idx"]=> string(1) "3"
["name"]=> string(14) "JAP"
["code"]=> string(2) "ja"
}
}
$language = 'en';
$key = array_search($language, array_column($language_list, 'code')); // $key = 1
echo $list[$key]->name; // print : ENG
keywords : PHP 다차원 배열, PHP 이차원차원 배열, PHP 2차원 배열 키 값 찾기, PHP 배열 값으로 키 찾기. php array_search array_column, PHP array_search array_column
반응형
'PHP, Codeigniter' 카테고리의 다른 글
php 변수안 줄바꿈 줄개행 (0) | 2021.04.06 |
---|---|
php stdclass to array, array to stdclass 배열<->객체 변환 (0) | 2021.04.02 |
PHP 엑셀 숫자0 사라짐 방지 / PHP excel 문자열 (0) | 2021.03.22 |
Codeigniter htaccess https 적용 (0) | 2021.03.19 |
Codeigniter alert helper 만들기 (0) | 2021.03.17 |
댓글