Rumah >pembangunan bahagian belakang >tutorial php >Apakah situasi apabila fungsi PHP mengembalikan data jenis tatasusunan?
Fungsi PHP mungkin menghadapi situasi berikut semasa mengembalikan data jenis tatasusunan: jika jenis tatasusunan kembali diisytiharkan secara eksplisit, tatasusunan akan dikembalikan secara langsung akan menyebabkan ralat memanggil fungsi yang menerima tatasusunan boleh mengembalikan tatasusunan lain; .
Fungsi PHP mengembalikan data jenis tatasusunan
Dalam PHP, apabila fungsi mengembalikan data jenis tatasusunan, anda biasanya menghadapi situasi berikut:
1 apabila tandatangannya secara eksplisit menyatakan bahawa jenis data yang dikembalikan ialah tatasusunan. Contohnya:
function get_data(): array { return ['name' => 'John', 'age' => 30]; }
2. Kembalikan null
Sesetengah fungsi mungkin mengembalikan nilai nol, contohnya apabila data yang diperlukan tidak dapat ditemui. Walau bagaimanapun, apabila fungsi diisytiharkan untuk mengembalikan jenis tatasusunan, mengembalikan null menimbulkan ralat.
3. Panggil fungsi yang menerima tatasusunan
PHP juga menyediakan beberapa fungsi (seperti fungsi :
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 现在是一个仅包含数字的数组
array_filter()
和 array_map()
),它们接收数组作为参数并返回另一个数组。以下示例显示如何使用 array_filter()
Kes praktikal: Dapatkan senarai fail
Pertimbangkan senarai fungsi fail direktori yang ditentukan:
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); }Fungsi ini mengembalikan tatasusunan yang mengandungi nama fail dalam direktori Ia mengendalikan direktori yang tidak sah, imbasan direktori yang gagal, dan penyahrujukan direktori semasa dan direktori induk
Atas ialah kandungan terperinci Apakah situasi apabila fungsi PHP mengembalikan data jenis tatasusunan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!