Я тоже искал ответ для этого. Если вам посчастливилось прицелиться в IE8 и выше, вы можете использовать display:table
и соответствующие значения для получения правил рендеринга таблиц с элементами уровня блока, включая div.
Если вам даже повезло и ваши пользователи используют браузеры верхнего уровня (например, если это приложение интрасети на компьютерах, которыми вы управляете, например, мой последний проект), вы можете использовать новый макет гибкой коробки в CSS3!
Если Вы уверены, что только когда-либо работаете с изображениями, можно проверить getimagesize () exif_imagetype () функция PHP, которая пытается возвратить тип пантомимы изображения.
, Если Вы не возражаете против внешних зависимостей, можно также проверить превосходное библиотека getID3 , которая может определить тип пантомимы многих различных типов файлов.
Наконец, можно проверить mime_content_type () функция - но это было удержано от использования для расширение Fileinfo PECL.
Можно использовать lynx
для автоматизации входа в систему, и он обеспечивает намного больше функций. Относитесь страница справочника рыси здесь
lynx
может быть легко интегрирована со сценарием оболочки. Используя lynx
с - подлинный параметр можно передать идентификатор и пароль для аутентификации.
-auth=ID:PASSWD устанавливают идентификатор авторизации и пароль для защищенных документов при запуске. Обязательно защитите любые файлы сценария, которые используют этот переключатель.
Hope это помогает.
если Вы только имеете дело с изображениями, можно использовать эти [getimagesize()][1]
функция, которая содержит все виды информации об изображении, включая тип.
А более общий подход должен был бы использовать расширение FileInfo от PECL. Документация PHP для этого расширения может быть найдена в: http://us.php.net/manual/en/ref.fileinfo.php
у Некоторых людей есть серьезные жалобы на то расширение... поэтому, если Вы сталкиваетесь с серьезными проблемами или не можете установить расширение по некоторым причинам, Вы могли бы хотеть проверить функцию устаревшую mime_content_type()
Я не использовал его, но существует расширение PECL для получения mimetype файла. Официальная документация для него находится в руководство .
В зависимости от Ваших целей, расширение файла может быть в порядке, но это весьма достоверно надежно, так как это так легко изменяется.
Согласно php руководству, функция finfo-файла является лучшим способом сделать это. Однако необходимо будет установить расширение FileInfo PECL.
, Если расширение не является опцией, можно использовать устаревшее функция mime_content_type.
mime_content_type () удерживается от использования, таким образом, Вы не будете в состоянии рассчитывать на него работающий в будущем. Существует "fileinfo" PECL расширение, но я не услышал хорошие вещи об этом.
, Если Вы работаете *, отклоняют сервер, можно сделать следующее, которое хорошо работало для меня:
$file = escapeshellarg( $filename );
$mime = shell_exec("file -bi " . $file);
$filename should probably include the absolute path.