PHP에서 2차원 배열은 일반적으로 관련 데이터의 집합으로 저장됩니다. 이러한 유형의 데이터 구조의 경우 각 배열 요소를 반복한 다음 배열 인덱스 연산자를 사용하여 각 요소의 값에 액세스할 수 있습니다. 지정된 필드에만 액세스해야 하는 경우 array_column() 함수를 사용하거나 순회 함수를 사용자 정의할 수 있습니다.
1. array_column() 함수 사용
array_column() 함수는 지정된 배열의 필드 값을 가져와서 새 배열로 반환할 수 있습니다. 매개변수 목록은 다음과 같습니다:
array_column(array $input, Mixed $column_key, Mixed $index_key = null) : array
매개변수 설명:
다음 예에서는 array_column() 함수를 사용하여 2차원 배열에서 지정된 필드를 얻는 방법을 보여줍니다.
// 二维数组 $data = array( array('id'=>1, 'name'=>'Alice', 'age'=>20), array('id'=>2, 'name'=>'Bob', 'age'=>23), array('id'=>3, 'name'=>'Charlie', 'age'=>25), ); // 获取名字字段值 $names = array_column($data, 'name'); print_r($names); // 输出 ['Alice', 'Bob', 'Charlie'] // 获取id和名字作为键的新数组 $new_data = array_column($data, 'age', 'name'); print_r($new_data); //输出 ['Alice'=>20, 'Bob'=>23, 'Charlie'=>25]
2. 순회 함수 사용자 정의
가져올 필드에 고정 위치가 없는 경우, 또는 복잡한 작업을 사용자 정의해야 하는 경우 이를 달성하기 위해 순회 기능을 사용자 정의할 수 있습니다. 다음은 순회 함수에 대한 샘플 코드입니다.
// 自定义一个遍历函数 function get_field_from_array($data,$field){ $result = array(); foreach($data as $item){ if(array_key_exists($field,$item)){ $result[] = $item[$field]; } } return $result; } // 二维数组 $data = array( array('id'=>1, 'name'=>'Alice', 'age'=>20), array('id'=>2, 'name'=>'Bob', 'age'=>23), array('id'=>3, 'name'=>'Charlie', 'age'=>25), ); // 获取名字字段值 $names = get_field_from_array($data,'name'); print_r($names); //输出 ['Alice', 'Bob', 'Charlie'] // 获取id字段值 $ids = get_field_from_array($data,'id'); print_r($ids); //输出 [1, 2, 3]
위의 두 가지 방법을 통해 2차원 배열에서 지정된 필드 값을 쉽게 얻을 수 있습니다. 어떤 방법을 사용하든 잘못된 배열 형식으로 인해 발생하는 오류 및 예외를 방지하려면 들어오는 배열 형식이 함수의 요구 사항을 충족하는지 여부에 주의해야 합니다.
위 내용은 백엔드 PHP에서 2차원 배열의 필드를 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!