2016-05-26 14 views
0

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

これにはどのような推奨事項がありますか?

答えて

1

この種類のソリューションを使用してください。

$name = "This-is_a__test--(name)"; 
$find = array("-", "_", "--", "(", ")"); 
$replace = array(" ", " ", " ", " ", " "); 
$converted = str_replace($find, $replace, $name); 

echo $converted; 

アウト置く:これはテスト名です

をあなたは罰金配列で検索したいものを含めます。

置き換えたい配列を置換配列に含めます。

これ以外の場合は、preg_replace()正規表現

+0

となりますが、角かっこはどうですか? – claudios

+0

私は答えを – PHJCJO

+0

に変更しました申し訳ありませんが、より詳細な回答が必要でした。この例では – claudios

関連する問題