Удалить расширение изображения, переименовать и восстановить - PullRequest
2 голосов
/ 05 декабря 2011

Скажите, что изображение называется: gecko.jpg

Могу ли я сначала удалить «.jpg» и добавить «-100x100» после «gecko», а затем вернуть расширение, чтобы оно было «gecko-100x100.jpg»?

Ответы [ 2 ]

5 голосов
/ 05 декабря 2011

использовать pathinfo

$path_parts = pathinfo('/www/htdocs/inc/lib.inc.php');
$new = $path_parts['filename'] . '-100x100.' .$path_parts['extension'];
4 голосов
/ 05 декабря 2011

Да, довольно просто с помощью строковых функций PHP в сочетании с basename()

$base = basename($filename, ".jpg");
echo $base . "-100x100" . ".jpg";

Или сделать это с любым типом файла, используя strrpos(), чтобы найти расширение, найдя последний .

// Use strrpos() & substr() to get the file extension
$ext = substr($filename, strrpos($filename, "."));
// Then stitch it together with the new string and file's basename
$newfilename = basename($filename, $ext) . "-100x100" . $ext;

-

// Some examples in action...
$filename = "somefile.jpg";
$ext = substr($filename, strrpos($filename, "."));
$newfilename = basename($filename, $ext) . "-100x100" . $ext;
echo $newfilename;
// outputs somefile-100x100.jpg

// Same thing with a .gif
$filename = "somefile.gif";
// outputs somefile-100x100.gif
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...