Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Windows i dir() -> read
Forum PHP.pl > Forum > Przedszkole
maciek_3000
Witam!

Chcę stworzyć menedżera plików w php, aktualnie jestem na wstępnym procesie - wyświetlanie listy plików. Sam menedżer ma wyświetlać kodowanie w UTF-8, ale funkcja utf8_encode, która koduje z iso-8859-1 do utf-8 nie wyświetla prawidłowych wyników. Skrypt póki co testuje na maszynie pod Windows XP. Dopiero Iconv z windows-1250 do utf-8 sprawiło, iż pliki z ogonkami zaczęły sie wyświetlać na ekranie prawidłowo.

Chciałbym aby mój program bez problemu działał także na innych systemach - m. in. na Unixie, Linuxie, ale napewno kodowanie na tych maszynach z windows-1250 nie przyniesie wzorowych rezultatów.

Czy mógłbym liczyć od użytkowników tego forum o jakąś poradę?

Maciek
erix
Unix wykorzystuje chyba iso 8859-2 do kodowania polskich krzaczków.
maciek_3000
Dobrze, ale w takim razie muszę wprowadzić mechanizm rozpoznawania systemu na którym aplikacja jest uruchomiona, czy jest na to jakiś uniwersalny sposób?
erix
Sprawdzaj, czy zostały zdefiniowane funkcje z grupy w32api.
siemakuba
Cytat(erix @ 16.10.2006, 17:04:06 ) *
Sprawdzaj, czy zostały zdefiniowane funkcje z grupy w32api.
Czy to ma być test na sprawdzenie systemu? Czy nie lepiej w takim razie skorzystać z predefiniowanej stałej PHP_OS? (manual: Predefined Constants)

@maciek_3000: spróbuj z wymuszaniem kodowania:
  1. <?php
  2. ini_set('default_charset', 'UTF-8');
  3. ?>
i możesz jeszcze spróbować puszczać nagłówek:
  1. <?php
  2. header('Content-type: text/html; charset=utf-8');
  3. ?>


pozdr.
erix
Cytat
Czy nie lepiej w takim razie skorzystać z predefiniowanej stałej PHP_OS?

Kobyli łeb, wyleciało mi z głowy...
maciek_3000
wysłanie nagłówka i ustawienie domyślnego kodowania na utf8 nie przyniosło pozytywnych rezulatów.

Być może w trakim razie najlepszym rozwiązaniem będzie kodowanie przez iconv z windows-1250 na utf-8 dla Windowsa?
erix
Ale jeszcze musiałbyś sprawdzać jaka wersja Windows jest na serwerze, bo w9x koduje nazwy w CP, a NT - Unicode (na NTFS-ie).
maciek_3000
no to jakoś dziwnie to wygląda, bo mam platformę na WinXP i jakimś cudem mam zakodowane wszystko w CP
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.