Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Utf-8 to Ansi
Forum PHP.pl > Forum > Przedszkole
kuba_pilach
Witam,
Wiem, że pełno tego w necie. Ale jakoś próbowałem różnych metod i rozwalało mi polskie znaki.
Uploaduję plik na swojej stronie i potem go obrabiam i zapisuję w innym formacie.
Na przykładzie, plik wczytywany jest w UTF-8.
Całą treść pliku mam w tablicy $plik.
I teraz jak przekonwertować tą zmienną na ANSI by nie zepsuć polskich znaków?
Ma ktoś jakieś propozycje?
kuba_pilach
Tak szczerze to próbowałem.
Napisałem między innymi:
  1. for($linia=0;$linia<count($plik);$linia++){
  2. $plik[$linia] = iconv('UTF-8', 'Windows-1250', $plik[$linia]);
  3. }

Na polskich znakach urywało mi tekst w wierszach, jak napotkało polski znak ;/
nospor
A próbowałeś z //TRANSLIT lub //IGNORE ?
kuba_pilach
TRANSLIT z tego co widzę pomógł o.O
Ale teraz mam pytanie, jak wykryć, czy format jest w ANSI? Tzn na zasadzie, jak jest w UTF-8 to tylko wtedy konwertować ?
questionmark.gif?

Ktoś wie jak wykrywać czy format pliku jest w utf?
Próbowałem tak:
  1. for($linia=0;$linia<count($plik);$linia++){
  2. if(mb_detect_encoding($plik[$linia])=="UTF-8"){
  3. $plik[$linia] = iconv('UTF-8', 'Windows-1250//TRANSLIT', $plik[$linia]);
  4. }
  5. }

Ale nie dokońca działa... Ktoś zna lepszy sposób?
falcon85
mb_detect_encoding($string)

http://php.net/manual/en/function.mb-detect-encoding.php
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.