PHP: nazwa pliku bez rozszerzenia - najlepszy sposób?

Próbuję wyciągnąć nazwę pliku z katalogu bez rozszerzenia.

Przedzieram się w następujący sposób:

foreach ($allowed_files as $filename) { 
  $link_filename = substr(basename($filename), 4, strrpos(basename($filename), '.'));
  $src_filename = substr($link_filename, 0, strrpos($link_filename) - 4);
  echo $src_filename;
}

... Ale to nie działa, jeśli długość łańcucha rozszerzenia jest większa niż 3. Szukałem w dokumentach PHP bezskutecznie.

questionAnswers(3)

yourAnswerToTheQuestion