Нашел чуть более элегантное решение: $name = rawur

Нашел чуть более элегантное решение: $name = rawurldecode(basename(rawurlencode($name))); Пока работает без нареканий.