Как определить тип файла в PHP?

Пользователь

от rodger.botsford , в категории: PHP , 3 года назад

Как определить тип файла в PHP?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от adela , 3 года назад

@rodger.botsford Используйте pathinfo() функцию в PHP, чтобы определить типа файла и его расширение, ниже пример кода:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
<?php

$path = 'test.txt';

$ext = pathinfo($path, PATHINFO_EXTENSION);

// Вывод: txt
print_r($ext);

if ($ext === 'txt') {
    // код
}


Пользователь

от lilla.herman , 2 года назад

@rodger.botsford 

В PHP тип файла можно определить несколькими способами, в зависимости от того, какая информация вам нужна о файле. Ниже приведены некоторые из наиболее распространенных способов:

  1. С помощью функции pathinfo(): эта функция возвращает массив, содержащий информацию о пути к файлу, в том числе расширение файла. Например:
1
2
3
$file_path = '/path/to/file.jpg';
$file_ext = pathinfo($file_path, PATHINFO_EXTENSION);
echo $file_ext; // выводит "jpg"


  1. С помощью функции mime_content_type(): эта функция возвращает тип MIME файла на основе его содержимого. Например:
1
2
3
$file_path = '/path/to/file.jpg';
$file_type = mime_content_type($file_path);
echo $file_type; // выводит "image/jpeg"


  1. С помощью функции finfo_open(): эта функция создает объект Fileinfo, который может использоваться для определения типа файла на основе его содержимого. Например:
1
2
3
4
5
$file_path = '/path/to/file.jpg';
$file_info = finfo_open(FILEINFO_MIME_TYPE);
$file_type = finfo_file($file_info, $file_path);
echo $file_type; // выводит "image/jpeg"
finfo_close($file_info);


Каждый из этих методов имеет свои преимущества и недостатки, поэтому выберите тот, который лучше всего соответствует вашим потребностям.