Loại MIME của tệp PHP là gì?
Loại MIME là nhãn được sử dụng để xác định loại dữ liệu. Nó được sử dụng để phần mềm có thể biết cách xử lý dữ liệu. Nó phục vụ cùng một mục đích trên Internet mà các phần mở rộng tệp thực hiện trên Microsoft Windows Show Vì vậy, nếu một máy chủ nói “Đây là văn bản/html” thì máy khách có thể nói “À, đây là tài liệu HTML, tôi có thể hiển thị nội bộ đó”, trong khi nếu máy chủ nói “Đây là ứng dụng/pdf” thì máy khách có thể nói “À . ” Mật mãVì vậy, hãy đi đến mã. Ở đây tôi đã viết Class để phân loại tệp dựa trên MIME Type trong PHP Tôi phân loại một số tệp theo 5 danh mục, ví dụ như Âm nhạc/Âm thanh, Video, Phần mềm, Ứng dụng và Sách Đó là tất cảBạn có thể sử dụng mã đó để phân loại một số tệp, nếu bạn muốn thêm các danh mục khác, chỉ cần tạo một mảng mới và xác định danh mục loại Mime nào bạn sẽ thêm vào. Nếu không, bạn có thể tạo câu lệnh điều kiện trong đó là “Khác” để phân loại tệp không được liệt kê trong Lớp Lớp PHP đơn giản để đoán loại tệp mime dựa trên phần mở rộng tệp có khả năng sử dụng trong dự án Symfony Cài đặtcomposer require dfridrich/php-mime-type Cách sử dụngsử dụng cơ bản
// from string, can be used on non-existing files
echo \Defr\PhpMimeType\MimeType::get('index.php'); // outputs text/html
// from SplFileInfo
echo \Defr\PhpMimeType\MimeType::get(new \SplFileInfo('Video.avi')); // outputs application/octet-stream
// from SplFileObject
echo \Defr\PhpMimeType\MimeType::get(new \SplFileObject('Image.JPEG')); // outputs image/jpeg
// from string
echo \Defr\PhpMimeType\MimeType::get('someStrange.extension'); // outputs application/octet-stream
// Multiple files
$files = ['index.php', new \SplFileInfo('Video.avi'), new \SplFileObject('example.php')];
/** @var \Defr\PhpMimeType\MimeTypeInfo[] $mimeTypes */
$mimeTypes = \Defr\PhpMimeType\MimeType::multiple($files);
foreach ($mimeTypes as $mimeType) {
echo sprintf('File "%s" is mime type "%s"', $mimeType->getFileName(), $mimeType->getMimeType()).' phản hồi của SymfonyNếu bạn muốn sử dụng tính năng phản hồi của Symfony, hãy cài đặt thêm gói HTTP Foundation composer require symfony/http-foundation Chỉ cần chuyển tên tệp hoặc đối tượng SPL cho phương thức phản hồi và bạn sẽ nhận được đối tượng Symfony\Component\HttpFoundation\Response. Bố trí là tệp đính kèm theo mặc định, bạn có thể thay đổi nó thành nội tuyến hoặc sử dụng hằng số của Symfony ResponseHeaderBag DISPOSITION_ATTACHMENT hoặc DISPOSITION_INLINE Hệ thống Phần mở rộng Thư Internet Đa năng (MIME) được thiết kế để cho phép định dạng email để chúng có thể dễ dàng bao gồm các tệp và được tạo thành từ nhiều phần. Để có thể hướng dẫn các ứng dụng email loại tệp được đính kèm, các loại MIME đã được tạo - mô tả ngắn, bằng văn bản về các loại tệp mà mọi người có thể nhận ra. Các loại MIME phổ biến đến mức hiện tại chúng được sử dụng trên toàn bộ WWW và nhiều hệ điều hành dựa vào chúng để quyết định cách mở tệp. Trong email, các tệp đính kèm được sao chép vào thư theo nghĩa đen dưới dạng một chuỗi được mã hóa, với các điểm đánh dấu ranh giới MIME được sử dụng để cho người đọc thư biết vị trí bắt đầu và kết thúc của mỗi tệp đính kèm Để giúp phân biệt một tệp nhất định là gì và cách xử lý tệp đó, cả máy chủ web và ứng dụng email đều gửi và nhận các loại MIME - chuỗi văn bản cơ bản xác định tệp đã cho là gì. Ví dụ: nếu bạn muốn gửi JPEG từ một tập lệnh, bạn cần tìm ra loại MIME của nó ("hình ảnh/jpeg") và gửi nó tới trình duyệt trước chính hình ảnh đó Có các loại MIME cho tất cả các loại định dạng, từ "application/zip" cho tệp zip đến "video/quicktime" cho Quicktime. mov và "application/x-tar" cho các tệp Tar. Công việc của Cơ quan cấp số được gán trên Internet (IANA) là gán các loại MIME chính thức và nó cũng giữ một danh sách tất cả các loại MIME đã đăng ký trên trang web của mình. Tại thời điểm viết, danh sách này có sẵn tại http. //www. iana. org/bài tập/loại phương tiện - đáng xem qua Có hàng trăm, thậm chí có thể hàng ngàn loại MIME ngoài kia, đơn giản vì có rất nhiều định dạng tệp ngoài kia, nhưng có một số định dạng nhất định nổi bật là phổ biến, đó là đơn/đồng. MS Excel Tệp dữ liệu Microsoft Excel âm thanh/wav Tệp âm thanh sóng phông chữ/ttf Phông chữ TrueType hình ảnh/gif ảnh GIF hình ảnh/jpeg ảnh JPEG hình ảnh/tiff hình ảnh TIFF hình ảnh/bmp Hình ảnh bitmap hình ảnh/png hình ảnh PNG văn bản/html tệp HTML văn bản/đồng bằng Văn bản thô văn bản/đồng. ms-từ Tệp dữ liệu Microsoft Word video/mpeg phim MPEG video/thời gian nhanh video quay nhanh Như bạn có thể thấy, ý nghĩa là tự giải thích từ loại MIME - nó có thể đọc được bằng con người và có thể đọc được bằng máy, đây là một tài sản lớn. Các loại MIME được sử dụng ở nhiều nơi khác ngoài email - ví dụ: máy chủ web sử dụng rất nhiều loại MIME để biết cách xử lý các tệp khi chúng được yêu cầu và cũng để chúng biết loại tài liệu nào khách hàng có thể và Đương nhiên, bạn không nên tiếp tục tra cứu các danh sách dài để tìm loại MIME mà bạn muốn mỗi khi bạn nhận được một tệp, nhưng PHP đã giải cứu bằng chức năng tra cứu MIME đặc biệt, mime_content_type(). Điều này dựa trên mô-đun Apache mod_mime_magic, bản thân mô-đun này dựa trên lệnh tệp Unix. Nếu bạn chưa bao giờ sử dụng điều này trước đây, thì nguyên tắc là nhiều loại tệp có một mã định danh duy nhất trong một vài byte đầu tiên, được gọi là "số ma thuật", chỉ định loại tệp đó là gì. Ví dụ, các bản đồ bit bắt đầu bằng "BM" và các tệp thực thi MS DOS bắt đầu bằng "MZ". Bằng cách có một bảng tra cứu lớn lựa chọn các con số kỳ diệu này, khá dễ dàng để biết loại tệp nào đang được kiểm tra và do đó, loại MIME nên là gì Để tiện ích mở rộng ma thuật MIME hoạt động, bạn phải định cấu hình PHP bằng công tắc -with-mime-magic (Unix) hoặc bật tiện ích mở rộng trong php của bạn. ini (Windows). Trên Windows, bạn cũng sẽ cần chỉnh sửa một mục khác trong tệp php của mình. ini - "mime_magic. magicfile" nên được đặt vào thư mục cài đặt PHP, với thư mục con "extras". Vì vậy, nếu bạn đã cài đặt PHP vào c. \php, điều này sẽ cần được đặt thành "c. /php/bổ sung/ma thuật. kịch câm". Trên Unix, tiện ích mở rộng này dựa trên tệp "ma thuật" được gửi cùng với Apache. Nếu PHP không tìm thấy điều này vì một số lý do, hãy thử đặt cấu hình php. ini cũng vậy Khi bạn có tiện ích mở rộng ma thuật MIME hoạt động, bạn chỉ cần chuyển tên tệp tới mime_content_type() để lấy loại MIME của nó làm giá trị trả về, như thế này
Chạy tập lệnh đó, với điều kiện là bạn thực sự có các tệp như vậy, nên xuất ứng dụng/zip và hình ảnh/jpeg Bạn muốn học PHP 7? Hacking with PHP đã được cập nhật đầy đủ cho PHP 7 và hiện có sẵn dưới dạng PDF có thể tải xuống. Nhận hơn 1200 trang học PHP thực hành ngay hôm nay Nếu điều này hữu ích, vui lòng dành chút thời gian để nói với những người khác về Hacking với PHP bằng cách tweet về nó Loại MIME trong PHP là gì?Hàm mime_content_type() là một hàm sẵn có trong PHP, được dùng để lấy loại nội dung MIME của tệp . cú pháp. chuỗi mime_content_type( $file )
Loại MIME của tệp là gì?Loại phương tiện (còn được gọi là Tiện ích mở rộng thư Internet đa năng hoặc loại MIME) cho biết bản chất và định dạng của tài liệu, tệp hoặc loại byte. MIME types are defined and standardized in IETF's RFC 6838.
Ví dụ về kiểu MIME là gì?Ví dụ về các loại MIME là. văn bản/html cho các trang web bình thường . text/plain cho văn bản thuần túy. ứng dụng/octet-stream có nghĩa là “tải xuống tệp này”
Loại MIME có giống với loại tệp không?Trong khi phần mở rộng tệp thường được sử dụng cho hệ điều hành của bạn để quyết định chương trình nào sẽ mở tệp bằng, thì các loại Mime được trình duyệt của bạn sử dụng để quyết định cách trình bày một số dữ liệu (hoặc máy chủ về cách diễn giải dữ liệu nhận được). Cả hai đều không bắt buộc nhưng bạn nên có một thỏa thuận . |