Как получить расширение файла в PHP? [дубликат]




Возможные Дубликаты:
как извлечь расширение файла в PHP?






Я хочу получить расширение файла изображения, которое я загружаю, но я просто получаю массив обратно.



$userfile_name = $_FILES['image']['name'];
$userfile_extn = explode(".", strtolower($_FILES['image']['name']));


есть ли способ просто получить само расширение?

683   5  

5 ответов:

нет необходимости использовать строковые функции. Вы можете использовать что-то, что на самом деле предназначено для того, что вы хотите: pathinfo():

$path = $_FILES['image']['name'];
$ext = pathinfo($path, PATHINFO_EXTENSION);

Это тоже будет работать:

$array = explode('.', $_FILES['image']['name']);
$extension = end($array);

лучший метод использует strrpos + substr (быстрее, чем взорваться для этого):

$userfile_name = $_FILES['image']['name'];
$userfile_extn = substr($userfile_name, strrpos($userfile_name, '.')+1);

но, чтобы проверить тип файла, используя mime_content_type лучше : http://www.php.net/manual/en/function.mime-content-type.php

вы можете попробовать с этим для типа mime

$image = getimagesize($_FILES['image']['tmp_name']);

$image['mime'] вернет тип mime.

эта функция не требует библиотеки GD. Вы можете найти документацию здесь.

это возвращает тип mime изображения.

некоторые люди используют $_FILES["file"]["type"] но это не так надежно, как было дано браузером, а не PHP.

можно использовать pathinfo() как ThiefMaster предложил, чтобы получить изображение расширение.

сначала убедитесь, что изображение успешно загружается во время разработки, прежде чем выполнять какие-либо операции с изображением.

как о

$ext = array_pop($userfile_extn);

Comments

    Ничего не найдено.