Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] explode problem z kodowaniem utf8
Forum PHP.pl > Forum > Przedszkole
Hpsi
Witam mam pewien problem, gdyż musze stringa na tablice sobie rozwalić, i tutaj oczywiście explode uzywam:
  1. $string = 'test abcdef poznań';
  2. $arr = explode(' ', $string);


I problem polega na tym, że po rozbuciu na tablice zamiast polskich znaków mam "�"

kodowanie w utf8 , w bazie: metoda porownywania napisów : utf8_polish_ci

już nie mam pomysłu o co może chodzić, dodam że gdy echuje sobie stringa przed rozbiciem, jest ok ...
thek
Rozwiązan może być kilka... Jakie kodowanie strony Jeśli inne niż utf-8 to też kupa. Wszystko musi być utf-8, także strona - bo inaczej krzaki. Ja zrobilem na php 5.3.5 ten kod
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Test</title>
  5. </head>
  6. <?php
  7. $string = 'test abcdef poznań';
  8. $arr = explode(' ', $string);
  9. var_dump($arr);
  10. ?>
  11. </body>
  12. </html>

i var_dump pokazał polskie, ale... kodowanie strony: utf-8, kodowanie pliku: ANSI as Utf-8 (czyli bez BOM). Jeśli nadal kicha, to mozna próbować jeszcze mb_split i preg_split, ale na wyświetlanie to i tak nie zadziała. Bo to problem wyświetlania znaku, a nie dziwnego działania funkcji explode, która faktycznie może xle dzialać z polskimi znakami diakrytycznymi, które nie są zgodne z ANSI.
Hpsi
mb_split dało radę, thanks c(",)
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.