由于文件名中的特殊字符,无法复制文件

时间:2014-04-04 11:46:14

标签: php symfony filesystems

我想在Symfony2中复制一个文件,但是我收到了一个错误:

Symfony\Component\Filesystem\Exception\FileNotFoundException: Failed to copy "../../../public_html/uploads/images/2011/03/MG_3839-ba�o.jpg" because file does not exist

$fs = new Filesystem();
$fs->copy('../../../public_html/uploads/images/'.$image, '../../../public_html/uploads/tmp/'.$image, true);

var_dump($image)提供2011/03/MG_3839-baño.jpgmb_detect_encoding($image)提供ASCII。为什么Symfony要查找包含 标志的文件名?我无法弄清楚该符号的来源,因为var_dump()给出了正确的文件名。

2 个答案:

答案 0 :(得分:0)

尝试此命令:

$fs = new Filesystem();
  

$ image = iconv(“UTF-8”,“ISO-8859-1 //翻译”,$ image);

$fs->copy('../../../public_html/uploads/images/'.$image, '../../../public_html/uploads/tmp/'.$image, true);

答案 1 :(得分:-1)

$ file_name = strtr($ file_name,“áéíóúâêôàãõçÁÉÍÓÚÂÊÔÀÃÕǺª”,“aeiouaeoaaocAEIOUAEOAAOCoa”);