php dosya uzantısı değiştirmek?

5 Cevap

Nasıl php bir dosya dosya uzantısı adını değiştiririm?

example: $filename='234230923_picture.bmp' and I want the extension to change to 'jpg'.

Teşekkürler

5 Cevap

Sadece regexp ile değiştirin:

$filename = preg_replace('"\.bmp$"', '.jpg', $filename);

Ayrıca diğer görüntü uzantıları kaldırmak için bu kodu uzatabilirsiniz, sadece bmp:

$filename = preg_replace('"\.(bmp|gif)$"', '.jpg', $filename);
$newname = basename($filename, ".bmp").".jpg";
rename($filename, $newname);

Dosya bir bmp dosyası ise, eki değişen biçimini değiştirmek değil unutmayın :)

(Basename örnekte olduğu gibi) regex kullanarak, ama (regex örnekte olduğu gibi) birden fazla uzatma olanakları sağlayan Not:

$newname = str_replace(array(".bmp", ".gif"), ".jpg", $filename);
rename($filename, $newname);

Tabii ki herhangi bir basit sonra regex, ayrıca dosya ortasında bir. Bmp yerini alacak daha pahalı iken, operasyon yerine.

Belirtildiği gibi, bu bir görüntü dosyası biçimini değiştirmek için gitmiyor. Eğer bir grafik kütüphanesi kullanmak gerekir yapmak için.

Dosyayı http://us2.php.net/rename yeniden adlandırmak için kullanabilirsiniz ve bu http://us2.php.net/manual/en/function.pathinfo.php dosyası ve diğer uzantısı bilgi basename olsun ..