setlocale не работает

Если вы поставили новый сервер Ubuntu 14.04, то там могут не стоять русские языковые пакеты. Из-за чего не будет работать функция:

setlocale(LC_ALL, 'ru_RU.utf8');

В итоге pathinfo будет выдавать пустое имя файла.

Посмотреть список установленных локалей можно так:

locale -a

Исправляем:

locale-gen ru_RU
locale-gen ru_RU.UTF-8
update-locale