1

opencart 画像マネージャーを使用して、画像ファイル名からスペースと安全でない文字を自動的に削除するようにアップロードを設定するにはどうすればよいですか?

Filemanager.php

$filename = basename(html_entity_decode($this->request->files['image']['name'], ENT_QUOTES, 'UTF-8'));
4

2 に答える 2

1

最良の方法は、次のような単純なpreg_replaceを使用することです。

$filename = preg_replace('~[^\w\./\\\\]+~', '', $filename);

これにより、文字、数字、アンダースコア、前後のスラッシュ、およびが可能になります。ファイル名のみで、他のものはすべて削除します

于 2012-05-24T12:52:41.060 に答える
0

htmlspecialcharsは、安全でない文字(<>&'"など)に対して実行する必要があることを正確に実行します。

      // for removing unsafe characters
       $text = htmlspecialchars($text);

//空白を削除するため

正規表現付き:

      preg_replace('/( )+/', ' ', $string);

      //If you also want to remove every multi-white characters, you can use \s (\s is  white characters)

      preg_replace('/(\s)+/', ' ', $string);
于 2012-05-24T12:41:00.467 に答える