Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Menentukan Jenis MIME Fail dalam PHP Dengan Tepat Menggunakan REQUEST_URI?

Bagaimanakah Saya Boleh Menentukan Jenis MIME Fail dalam PHP Dengan Tepat Menggunakan REQUEST_URI?

Patricia Arquette
Patricia Arquetteasal
2024-11-27 07:30:10215semak imbas

How Can I Accurately Determine a File's MIME Type in PHP Using REQUEST_URI?

Menentukan Jenis MIME dalam PHP

Apabila bekerja dengan fail, adalah penting untuk mengenal pasti jenis MIME mereka untuk pemprosesan yang betul. Dalam PHP, bagaimanakah anda boleh menentukan jenis MIME fail dengan tepat berdasarkan REQUEST_URI?

Menggunakan Sambungan Fail

Satu pendekatan biasa ialah memeriksa sambungan fail yang diminta . Dalam fail index.php yang diberikan yang mengendalikan semua permintaan:

include('/www/site'.$_SERVER['REQUEST_URI']);

Anda boleh menggunakan fungsi pathinfo() untuk mengekstrak sambungan fail:

$filename = $_SERVER['REQUEST_URI'];
$extension = pathinfo($filename, PATHINFO_EXTENSION);

Berdasarkan sambungan, anda boleh menentukan jenis MIME menggunakan tatasusunan bersekutu atau pernyataan suis.

Menggunakan Exif Data

Jika anda berurusan secara eksklusif dengan imej, anda boleh menggunakan fungsi exif_imagetype():

$imageType = exif_imagetype($filename);
$mimeType = image_type_to_mime_type($imageType);

Menggunakan Perpustakaan getID3

Untuk pengenalan jenis fail yang lebih luas, pustaka getID3 ialah disyorkan:

require_once '/path/to/getID3/getid3.php';
$getID3 = new getID3();
$fileinfo = $getID3->analyze($filename);
$mimeType = $fileinfo['mime_type'];

Menggunakan Fungsi mime_content_type

Fungsi mime_content_type() juga boleh digunakan, tetapi ia tidak digunakan lagi dan bergantung pada sambungan PECL Fileinfo:

$mimeType = mime_content_type($filename);

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menentukan Jenis MIME Fail dalam PHP Dengan Tepat Menggunakan REQUEST_URI?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn