Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Будет ли код рабочим на Debian?
Форумы портала PHP.SU » » Вопросы новичков » Будет ли код рабочим на Debian?

Страниц (1): [1]
 

1. borus - 05 Июля, 2017 - 15:39:27 - перейти к сообщению
Здравствуйте!

Получаю список файлов в папке:
PHP:
скопировать код в буфер обмена
  1.     public function select_files($folder){
  2.         $fp=opendir($folder);
  3.         $internal_array = array();
  4.         while (false !== ($file = readdir($fp))) {
  5.             if(is_file($folder."/".$file)) {
  6.                 $internal_array[] = iconv('windows-1251','UTF-8',$file);
  7.             }
  8.         }
  9.         closedir($fp);
  10.         return $internal_array;
  11.     }

использую iconv, чтобы на локальном сервере, работающем из под Windows, видеть нормально названия файлов с русскими буквами.
Вопрос, если этот код будет исполняться где-нибудь на Debian, то навредит ли использование строки iconv('windows-1251','UTF-8',$file)?
Если да, то как сделать код универсальным, чтобы и из-под Windows и из-под *nix одинаково верно получать список файлов с русскими буквами в названии?
Дальше некоторые из найденных файлов php-код будет удалять, поэтому нужны их правильные полные имена
2. Sail - 05 Июля, 2017 - 19:58:54 - перейти к сообщению
borus, помочь может, например: php_uname()
3. borus - 06 Июля, 2017 - 13:13:26 - перейти к сообщению
Sail пишет:
borus, помочь может, например: php_uname()

спасибо!
4. borus - 05 Августа, 2017 - 15:24:20 - перейти к сообщению
Здравствуйте!
В развитие темы: на Юниксах json_encode(scandir('путь_до_папки_с_файлами_с_русскими_буквами')) не будет приводить к false?
5. LIME - 05 Августа, 2017 - 15:37:40 - перейти к сообщению
нет
его не колышит кодировка значений
(Добавление)
по первому вопросу
iconv не нужен
более того, исходя из задачи он будет вреден(вернее практически бесполезен)
так как при удалении ОС не найдет файл после перекодировки имени
проверь
(Добавление)
borus пишет:
чтобы на локальном сервере, работающем из под Windows, видеть нормально названия файлов с русскими буквами.
видеть, а вернее отображать, это немного другое
ОС не смотрит на таблицу файлов глазами рускоговорящего человека))

 

Powered by ExBB FM 1.0 RC1