PHP: получить расширение файла


Получить расширение файла — не самая сложная задача. Но подходов к ее решению может быть несколько. Давайте попробуем рассмотреть несколько возможных вариантов и понять принципы их работы.


Способ первый
  1.   function getExtension1($filename) {
  2.     return end(explode(".", $filename));
  3.   }


Способ второй
  1.   function getExtension2($filename) {
  2.     $path_info = pathinfo($filename);
  3.     return $path_info['extension'];
  4.   }


Способ третий
  1.   function getExtension3($filename) {
  2.     return substr($fileName, strrpos($fileName, '.') + 1);
  3.   }


Способ четвертый
  1.   function getExtension4($filename) {
  2.     return substr(strrchr($fileName, '.'), 1);
  3.   }


Способ пятый
  1.   function getExtension5($filename) {
  2.     return array_pop(explode(".", $filename));
  3.   }


Что работает быстрее?
Результаты выполнения всех способов примерно одинаковые:
Способ #1: 0.6777439 сек.
Способ #2: 0.5664740 сек.
Способ #3: 0.6604638 сек.
Способ #4: 0.4782789 сек.
Способ #5: 0.6564250 сек.