Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Funkcja fwrite, Jak wymusić kodowanie utf ?
majestiq
post
Post #1





Grupa: Zarejestrowani
Postów: 235
Pomógł: 0
Dołączył: 26.10.2006

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


Zapisuje za pomocą fwrite dane do plikut txt:

  1. <?php
  2. // zapisanie nowej linijki i starej zawartości
  3. $plik = fopen("pozdrowienia.txt", "w");
  4. flock($plik, 2);
  5. fwrite($plik, "$_POST[pozd] r\n");
  6. for($i=0; $i < $ile; $i++) fwrite($plik, $tekst[$i]);
  7. flock($plik, 3);
  8. fclose($plik);
  9. setcookie ("sent", "sent", time()+60); //ustawia ciasto mowiace o tym, ze już wyslal pozdrowienia. 1=1 sekunda
  10. ?>



Jednak każda taka operacja zmienia mi kodowanie znaków dla pliku txt z ustawionego utf-8 na ANSI.
Przez to robią się krzaki przy polskich znakach.

Znaki są zakodowane w utf jednak plik jest zapisywany jako ANSI.

Jak to poprawić ?[php][/php]
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sowiq
post
Post #2





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

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


http://pl.php.net/utf8_encode :
Cytat
utf8_encode — Encodes an ISO-8859-1 string to UTF-8
Jednym słowem funkcja dekoduje ciąg znaków jakby był on zakodowany w ISO-8859-1. Jeśli masz np. kodowanie ISO-8859-2 to mogą się posypać krzaki. Rozwiązanie? iconv()" title="Zobacz w manualu PHP" target="_manual

Sprawdziłem przed chwilą i jeśli masz ustawione wszystkie kodowania na utf-8, to wyjściowy plik będzie z miejsca zakodowany w ten sam sposób.
  1. <?php
  2. $string = "żażółć gęślą jaźń";
  3. $fp = fopen('test.txt', "w");
  4. fwrite($fp, $string);
  5. fclose($fp);
  6. ?>
Zapisz to w pliku kodowanym w utf-8 i uruchom. Plik wynikowy będzie zakodowany od razu w utf-8.

Ten post edytował sowiq 30.03.2009, 09:10:17
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: 15.10.2025 - 08:22