$config['file_name'] = preg_replace('/(\.gif|\.jpg|\.png)/', '_thumb$1', $filename);
В основном я хочу, чтобы стать filename.jpg
filename_thumb.jpg
Добавить суффикс к имени файла
Я не понимаю, почему, но расширение повторяется дважды. (Filename.jpg.jpg).
Редактировать Это действительно работает, у меня есть другие проблемы в моем коде.
Ваш код работает должным образом: echo preg_replace ('/ (\ .gif | \ .jpg | \ .png) /', '_thumb $ 1', 'index.gif'); ps: добавить $ в конец выражения. – zerkms
См. Здесь для решения без регулярного выражения: http://stackoverflow.com/questions/2429611/regex-how-to-insert-string-before-file-extension – Matthew