2016-07-08 36 views
0

我有這樣的PDF文件名中的另一個性格相似,在給定的位置替換字符,而不會影響文件名

20160.pdf

,我想在位置4計數更換0開始0,我試圖用這樣的事情,

$filename[0] = "20160"; 
$filename[1] = "pdf"; 
$adds  = 1; 
$new_filename = str_replace($filename[0][4], $adds, $filename[0]) . '.' . $filename[1]; 

其中4$filename[0][4]生成的字符串長度爲filename[0]

問題是如何替換位置4的字符而不影響文件名中的另一個相似字符?

+3

什麼是你期望的輸出? –

+3

您可以直接$ filename [0] [4] ='wahteveryouwant'< - 檢查長度之前 –

+0

'str_replace'替換所有事件。如果要替換的角色總是處於相同的位置@KA_lin的建議對您來說可能已經足夠了。否則,你可能想使用'preg_replace' – marekful

回答

1

在這裏,你去!

$filename[0] = "20160"; 
$filename[1] = "pdf"; 
$adds  = 1; 

$filename[0][strlen($filename[0]) - 1] = $adds; 

echo $newfilename = $filename[0].'.'.$filename[1]; 

,輸出是 「20161.pdf」

+0

不錯,我們有類似的想法,但是,我認爲還有另一個更好的,有用的動態文件名 – Fil

+0

是的,那爲什麼我投票給你,但沒有我需要。 – Fil

相關問題