2016-07-08 49 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

相关问题