如果我有filename.jpg,用PHP如何改變它也filename123456789.jpg,其中123456789是一個時間戳,我目前做到這一點,改變一個字符串用PHP
$name = $filename;
$parts = explode(".", $name);
$filename = $parts[0].time().'.'.$parts[1];
然而,這僅僅只是我留下與123456789.
如果我有filename.jpg,用PHP如何改變它也filename123456789.jpg,其中123456789是一個時間戳,我目前做到這一點,改變一個字符串用PHP
$name = $filename;
$parts = explode(".", $name);
$filename = $parts[0].time().'.'.$parts[1];
然而,這僅僅只是我留下與123456789.
您的方法也可以很好地工作,但如果文件名有多個點,則會中斷。我寧願用PATHINFO()函數來實現這一點:
調試(輸出),您的輸入步驟,找到錯誤
function debug($var, $label = '') {
echo $label
. '<pre>'
. print_r($var, true)
. '</pre>';
}
$name = 'filename.bug.test.jpg';
debug($name, 'old filename');
$parts = explode('.', $name);
debug($parts, 'filenameparts');
$ext = array_pop($parts);
$prefix = implode('.', $parts);
$newName = $prefix . time() . '.' . $ext;
debug($newName, 'new filename');
如上面提到的使用pathinfo
代替explode
我用過explode
,我用過一個虛擬文件名。
它爲我工作得很好 – 2010-09-27 09:17:52
注意,有可能是在文件名 – 2010-09-27 09:20:26
任何人都可以解釋我upvoting這個問題的原因,更多的點? – 2010-09-27 09:25:19