我尝试使用php删除目录中包含特殊字符的文件。
我使用unlink()
函数并且它按原样工作,但是当文件包含特殊字符时,它无法找到该文件。
现在我使用str_replace()
函数替换名称。
见下面的例子。
<?php
//replace "+" sign with space.
$filename = str_replace("+", " ", $filename);
$dir = "_resources/docs/";
unlink($dir . $filename);
?>
它的工作原理,但文件名如何?
[Vouching_Sample_02]-SMCC_Q3_Vouching_September_Goods_012216
。
对此有什么好的建议吗?
答案 0 :(得分:1)
尝试使用这种解决方案。
$name = "This-is_a__test--(name)";
$find = array("-", "_", "--", "(", ")");
$replace = array(" ", " ", " ", " ", " ");
$converted = str_replace($find, $replace, $name);
echo $converted;
输出:这是一个测试名称
包括您要在精确数组中搜索的内容。
在替换数组中包含您要替换的内容。
否则将preg_replace()
与正则表达式