Php Проверка расширения файла на наличие в белом списке

30.04.2022

Довольно распространенная php задача получить расширение файла и проверить, что этот файл, например, картинка.

Просьба учесть, что доверять такому способу при загрузке файлов на сервер нельзя, т.к. легко можно переименовать php скрипт в ".jpg", но если нужно перебрать все файлы в папке и найти среди них картинки - такой вариант вполне подойдет.

 
  function getExtension($sFN)
  {
    return substr(strrchr($sFN, '.'), 1);
  }


  function checkPic($sFN)
  {
    $bRet = FALSE;
    $sExtension = strtolower(getExtension($sFN));
//-      echo $sExtension;
    if(in_array($sExtension, ['jpg', 'jpeg', 'png', 'gif', 'webp', 'svg', ])){
      $bRet = TRUE;  
    }
    return $bRet;
  }

  if (checkPic('file.Jpg')) {
    ...
  }


Категории: PHP
Яндекс.Метрика