PHP 함수는 배열 유형 데이터를 반환할 때 다음과 같은 상황에 직면할 수 있습니다. 반환 배열 유형이 명시적으로 선언되면 배열이 직접 반환됩니다. 배열을 수신하는 함수를 호출하면 오류가 발생합니다. .
PHP 함수는 배열 유형 데이터를 반환합니다.
PHP에서는 함수가 배열 유형 데이터를 반환할 때 일반적으로 다음과 같은 상황이 발생합니다.
1. 배열 유형 힌트 지우기
함수가 배열을 반환합니다. 서명이 반환된 데이터 유형이 배열임을 명시적으로 명시하는 경우. 예:
function get_data(): array { return ['name' => 'John', 'age' => 30]; }
2. null 반환
예를 들어 필요한 데이터를 찾을 수 없는 경우 일부 함수는 null 값을 반환할 수 있습니다. 그러나 함수가 배열 유형을 반환하도록 선언된 경우 null을 반환하면 오류가 발생합니다.
3 배열을 받는 함수를 호출합니다.
PHP도 일부 함수를 제공합니다(예: array_filter()
和 array_map()
),它们接收数组作为参数并返回另一个数组。以下示例显示如何使用 array_filter()
함수:
function filter_numbers(array $arr) { return array_filter($arr, function($item) { return is_numeric($item); }); } $numbers = [1, 2, 'a', 4, 'b']; $result = filter_numbers($numbers); // $result 现在是一个仅包含数字的数组
실용 사례: 파일 목록 가져오기
에서 파일 목록을 가져오는 함수를 고려하세요. 지정된 디렉터리:
function get_files(string $dir): array { if (!is_dir($dir)) { throw new InvalidArgumentException("$dir is not a valid directory."); } $files = scandir($dir); if ($files === false) { throw new RuntimeException("Failed to scan directory."); } foreach ($files as $key => $file) { if ($file == '.' || $file == '..') { unset($files[$key]); } } return array_values($files); }
이 함수는 디렉터리의 파일 이름이 포함된 배열을 반환합니다. 이 함수는 잘못된 디렉터리, 실패한 디렉터리 검색, 현재 디렉터리와 상위 디렉터리의 참조 해제를 처리합니다.
위 내용은 PHP 함수가 배열 유형 데이터를 반환하는 상황은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!