Рубрики
Uncategorized

Проверка типа файла PHP и сведения об установке модуля FileInfo

Автор оригинала: David Wong.

При разработке веб-системы функция загрузки файлов является очень распространенной функцией. В разработке этой функции есть очень важный шаг: проверка типа файла, которая играет очень важную роль в безопасности системы, а также является тем, что должен делать квалифицированный программист. Итак, как проверить тип файла в PHP?

Проверка типа документа метод

Прежде чем ответить на этот вопрос, сначала посмотрите на свою версию PHP, потому что в разных версиях могут быть разные методы:

До PHP 5.3 вы можете использовать метод типа mime < content > для проверки;

Но после PHP 5.3 от этого метода отказались, потому что в этом методе много проблем;

Рекомендуется обновить PHP 5.3 или ниже, потому что PHP 7 вышел, а вы все еще используете PHP 5.2 или старше, что совершенно не соответствует стилю быстрой итерации и продвигается со временем в интернет-круге. Это не шутка, что php 7 имеет очень большое повышение производительности.

Итак, давайте просто поговорим о методе проверки типов файлов после PHP 5.3: использование библиотеки FileInfo

Как использовать модуль FileInfo

Введение в модуль FileInfo в официальном документе: функции в этом модуле определяют тип содержимого и кодировку файла, просматривая определенную последовательность волшебных байтов в заданном месте файла.Хотя это не на 100% точно, обычно это работает хорошо.

Сначала закодируйте его

$fileName = 'www.pythontab.com.png';
$FIP = finfo'u open (fileinfo'mime); // returns MIME type
echo finfo_file($fip, $fileName);
finfo_close($fip);

Таким образом, вы можете напрямую вывести тип MIME файла, что относительно просто.

Установка модуля FileInfo

Однако PHP по умолчанию не открывает модуль FileInfo, и эта библиотека не будет установлена по умолчанию, поэтому нам нужно установить ее самостоятельно, прежде чем мы сможем ее использовать.

Вот как установить модуль FileInfo:

1 загрузите пакет расширения

Загрузка в соответствии с номером версии

wget -O php-5.6.25.tar.gz http://cn2.php.net/get/php-5.6.25.tar.gz/from/this/mirror

Вы также можете скачать пакет FileInfo отдельно здесь

wget -O http://pecl.php.net/get/Fileinfo-1.0.4.tgz

2 декомпрессия

tar -zxvf php-5.6.25.tar.gz

3 войдите в расширенный каталог

cd /soft_src/php/php-5.6.25/ext/fileinfo

4 скомпилируйте и установите

/usr/local/php/bin/phpize
./configure -with-php-config=/usr/local/php/bin/php-config
make && make install

Таким образом, новый fileinfo.so файл будет сгенерирован в каталоге расширений системы по умолчанию

5 измените файл php.ini

vim /usr/local/php/etc/php.ini

Add:.so

Перезапустите PHP, и установка будет завершена

Выше приведено все содержание этой статьи. Я надеюсь, что это поможет вам в вашем исследовании, и я надеюсь, что вы сможете больше поддерживать developepaer.