| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Преобразование названия файла в юникод |
| Автор: supercelt 19.8.2009, 18:38 | ||||
Если название у файла русское, то вылезает ошибка Warning: getimagesize(http://testcms.com/cms_s01_upload_files/images/картинка.jpg) [function.getimagesize]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\testcms.com\www\cms_s01_libs\tiny_mce\plugins\filemanager\php\functions.php on line 91 Потом я название файла обрабатывал вот этой функцией:
С ней тоже самое, почти такая же ошибка Warning: getimagesize(http://testcms.com/cms_s01_upload_files/images/Фото-0006.jpg) [function.getimagesize]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in Z:\home\testcms.com\www\cms_s01_libs\tiny_mce\plugins\filemanager\php\functions.php on line 91 Вариант переименовывать файл на ходу при закачке на сайт, в числа например не подходит. Так как файлы могут быть закачены через фтп как они есть. |
| Автор: Avrely 19.8.2009, 19:21 | ||
Добавлено @ 19:25 Если неработает rename(), то следует использовать http://php.net/system() иногда помогает |
| Автор: supercelt 20.8.2009, 15:03 |
| Avrely, получается будут заменяться русские буквы на транслит?. Но ведь как-то делают же, что название файла остаётся русскими буквами и всё работает... |
| Автор: nerezus 20.8.2009, 15:46 |
| supercelt, запусти на серверной ОС свой скрипт и удивишься - он будет работать. Это все из-за бага в винде(ага, фича прям), согласно которому кодировки в GUI и кодировка ФС разные(cp1251 и cp866). |
| Автор: supercelt 26.8.2009, 23:33 |
| понял, спасибо |