Верх страницы
Обложка к записи Получить расширение файла
Время для прочтения: 0 мин. 11 сек.

Получить расширение файла

Получить расширение файла в РНР задача не сложная и способов ее решения существует масса.

Давайте попробуем рассмотреть несколько возможных вариантов.

$filename = 'имя файла';

// 1 способ
echo end(explode('.', $filename));

// 2 способ
echo array_pop(explode('.', $filename));

// 3 способ
echo substr(strrchr($filename, '.'), 1);

// 4 способ
echo substr($filename, strrpos($filename, '.') + 1);

// 5 способ
echo pathinfo($filename, PATHINFO_EXTENSION);

Сам использую пятый способ, так как он лишен многих недостатков первых четерёх вариантов.

Что касается скорости

Все варианты дают примерно одинаковый результат. Чтобы сравнить все возможные варинаты по скорости, заведём цикл на 70000 оборотов и замерим. В результате получим:

  • Вариант 1 — 0.7333430 сек
  • Вариант 2 — 0.7562270 сек
  • Вариант 3 — 0.5981759 сек
  • Вариант 4 — 0.711136 сек
  • Вариант 5 — 0.6780031 сек

Автор: Кобзарёв Михаил

Русский разработчик с 20-ти летним стажем. Работаю с PHP, ООП, JavaScript, Git, WordPress, Битрикс, Joomla, Drupal, Opencart, DLE, Laravel, Moonshine, SuiteCRM.

Оптимизирую сайты под Google Page Speed, настраиваю импорты для больших магазинов на WooCommerce + WP All Import. Пишу плагины на заказ. Все мои услуги.

Веду блог о разработке, дайджест в телеграмме и в ВК.

Вы всегда можете нанять меня.

Комментарии
Подписаться
Уведомить о
guest

4 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
Maxim
Maxim
14 лет назад

А что по поводу скорости? Зачастую приходится получать не один десяток расширений.

Maxim
Maxim
14 лет назад
Ответить на  Кобзарёв Михаил

Спасибо, тут дело не в хостинге. Этот участок кода критичен в PHP-GTK приложении, знаю, что эту технологию считают дикостью.

Предыдущая запись
Следующая запись

Давайте дружить
в Телеграме

Авторский блог вашего покорного слуги в Telegram про web, программирование, алгоритмы, инструменты разработчика, WordPress, Joomla, Opencart, Laravel, Moonshine, фильмы и сериалы