Kenal pasti Format Fail: membezakan MP3 dan Imej tanpa semakan sambungan
Pendekatan standard untuk menentukan jenis fail melibatkan pengimbasan melalui kemungkinan sambungannya. Walau bagaimanapun, kaedah ini boleh membosankan dan tidak cekap. Soalan ini mencari penyelesaian alternatif untuk memastikan sama ada fail ialah MP3 atau imej tanpa bergantung pada semakan sambungan.
Penyelesaian terletak pada memanfaatkan keupayaan bahasa ibunda. Untuk versi PHP di bawah 5.3, fungsi mime_content_type() boleh menyediakan jenis MIME fail. Dari PHP 5.3 dan seterusnya, fifo_fopen() mengambil alih tugas ini.
Alternatif seperti exif_imagetype dan getimagesize juga wujud, tetapi fungsinya terhad untuk mengenal pasti jenis fail imej. Jika analisis jenis MIME yang komprehensif diperlukan, coretan kod berikut menawarkan penyelesaian yang kemas:
function getMimeType($filename) { $mimetype = false; if(function_exists('finfo_fopen')) { // open with FileInfo } elseif(function_exists('getimagesize')) { // open with GD } elseif(function_exists('exif_imagetype')) { // open with EXIF } elseif(function_exists('mime_content_type')) { $mimetype = mime_content_type($filename); } return $mimetype; }
Fungsi proksi ini secara berkesan menyerahkan tugas kepada pengesan yang tersedia pada sistem anda, memastikan pengenalan format fail yang mantap dan cekap proses.
Atas ialah kandungan terperinci Bagaimana untuk Mengenalpasti MP3 dan Imej Tanpa Pemeriksaan Sambungan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!