Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> php - kodowanie utf 8
szymek116
post
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 13.07.2006

Ostrzeżenie: (0%)
-----


Witam

mam mały problem jestem zmuszony do wykorzystywania na jednej stronie znaków diakrytycznych wielu języków, problem w tym że w php mam z tym mały problem w poniższym kodzie

  1. <?php session_start(); ?>
  2. <meta name="test - blabla" http-equiv="content-type" content="text/html; charset=utf-8"/>
  3.  
  4. <?php
  5.  
  6.  
  7. $a="gęś";
  8. print "$a<br>"; // tutaj drukuje ok
  9. for ( $i = 0 ; $i < strlen ($a) ; $i++ )
  10. {
  11. print "{$a[$i]}<br>"; // a tutaj w miejsach znaków diakrytycznych wstawia dziwne znaczki
  12. }
  13. ?>


a wynik jest taki:
gęś
g





od razu pwoiem ze strona kdoowa dla pliku jest ok i przeglądarka też dobrą rozpoznaje.

z góry dzięki za jakieś podpowiedzi co z tym zrobić
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Ludvik
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 698
Pomógł: 3
Dołączył: 28.03.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


No cóż, jak widać, php ma problem z unicode i to wiadomo nie od dzisiaj. W taki sposób pobierasz po 8 bitów, a polskie znaki diakrytyczne są kodowane 16, co widać na przykładzie. Nic z tym w ten sposób nie zrobisz. Pokombinuj z iconv, które pozwala na wycinanie pojedynczych znaków z tekstu kodowanego na różne sposoby.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 28.09.2025 - 22:13