Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: polskie znaki w nazwie pliku
Forum PHP.pl > Forum > Przedszkole
Gość_pawel
Posługuje się kodowaniem polskich znakow iso-8859-2. kiedy pobieram plik formulazem w miejsce polskich liter na twardym dysku mam krzaczki. jak pzrekonwertować nazwę pzred zapisaniem, zeby polskie znaczki byly prawidlowe?
Cezar708
nigdy nie uzywaj polskich znakow w nazwach plikow i kodowanie ISO-8859-2 nie ma tutaj zadnego znaczenia... po prostu to jest uzaleznione od konfiguracji serwera, jesli obsluguje on strone kodowa latin2 powinno byc dobrze... a jesli nie to masz krzaki.

poza tym tracisz na przenoszalnosci swojej stronki... np jesli z serwera windows bedziesz chcial umiescic strone na serwerze unix'a
redb
Pod windowsem obowiązuje kodowanie Windows-1250, przekonwertuj znaki na ten standard i będzie ok.
Gość_pawel
Juz doszedlem ze lepiej nie uzywac polskich znkow(konfiguracja serwera). Czy ma ktos jakas procedure odpolszczajaca napisy w latin2? ja znalazlem szereg konwerterow miedzy systemami kodowania, a nie natknalem sie na procedure usuwajaca polskie znaki. z gory dziekuje
Pigula
watpie zeby cos takiego istnialo, poniewaz raczej wszyscy nazywaja bez polskich znakow a jak to juz robia to albo zostaja przy tym albo poprawiaja recznie laugh.gif ale zawsze mozesz sam cos takiego napisac smile.gif
crash
Żeby zamienić polskie znaki diakrytyczne (ISO-8859-2) na 'normalne' litery możesz użyć tej funkcji:
  1. <?php
  2. function remove_pl_chars($tekst)
  3. {
  4. // iso-8859-2
  5. $tab_a = array(
  6. 'ł', 'ą', 'ś', 'ć', 'ó', 'ń', 'Ľ', 'ż', 'ę',
  7. 'Ł', 'ˇ', 'Ś', 'Ć', 'Ó', 'Ń', 'Ź', 'Ź', ''
  8. );
  9. // bez polskich
  10. $tab_b = array(
  11. 'l', 'a', 's', 'c', 'o', 'n', 'Z', 'z', 'e',
  12. 'L', 'A', 'S', 'C', 'O', 'N', 'Z', 'Z', 'E'
  13. );
  14.  
  15. return str_replace($tab_a, $tab_b, $tekst);
  16. }
  17. ?>
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.