Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zamiana polskich znaków
Forum PHP.pl > Forum > PHP
gandziorz
Witam,
Potrzebuje funkcji która zmienia znaki polskie na zamienniki.
Np. ą na & #261;.
Napisałem funkcje ale nie działa:
  1. <?php
  2. function plznakie ($zmienna) {
  3. $polskie=Array("ą","ć","ę","ł","ń","ś","ź","ż","Ą","Ć","Ę","Ł","Ń","Ś","Ź","Ż");
  4. $zamienniki=Array("& #261;","& #263;","& #281;","& #322;","& #324;","& #347;","& #378;","& #380;","& #260;","& #262;","& #280;","& #321;","& #323;","& #346;","& #377;","& #379;");
  5. $zmienna=str_replace($polskie,$zamienniki,$zmienna);
  6. return $zmienna;
  7. }
  8. ?>

Przy & nie ma spacji. Zrobiłem tylko żeby pokazać oco chodzi.
Pomożecie?
Cienki1980
A niby dlaczego to Ci nie działa ? Ja skopiowałem Twój kod i działa bez problemów.
maryaan
pewnie ze dziala, zobacz w zrodlo strony
gandziorz
Hmnn działa?
A u mnie nie blink.gif
  1. <?php
  2. //zamien znaki
  3. function plznakie ($zmienna) {
  4. $polskie=Array("ą","ć","ę","ł","ń","ś","ź","ż","Ą","Ć","Ę","Ł","Ń","Ś","Ź","Ż");
  5. $zamienniki=Array("ą","ć","ę","ł","ń","ś","ź","ż","Ą","Ć","Ę","Ł","Ń","Ś","Ź","Ż");
  6. $zmienna=str_replace($polskie,$zamienniki,$zmienna);
  7. return $zmienna;
  8. }
  9. $wiadomosc = addslashes(nl2br(plznakie($frm['wiadomosc'])));
  10. //nastepnie zmienna $wiadomosc daje do wysylania maila w html, niestety otrzymuje 
    jakies krzaczki np. zamiast ęł dostaje ęł
  11. ?>


--EDIT--
Ok chłopaki działa. Miałem źle ustawione co innego winksmiley.jpg
Funkcje moglibyście gdzieś przyczepić bo szukałem tego w necie niestety nie znalazłem i sam napisałem.
krzysztof_lechowski
ja zrobiłem to pregiem, i trzeba też dodać jeszcze ó i Ó, bo to też całkiem polskie znaki smile.gif
oto całość:
Kod
function plznaki ($zmienna) { //http://forum.php.pl/index.php?showtopic=61066&st=0&p=328604&#entry328604
    $polskie=Array('/ą/','/ć/','/ę/','/ł/','/ń/','/ś/','/ó/','/ź/','/ż/','/Ą/','/Ć/','/Ę/','/Ł/','/Ń/','/Ś/','Ó','/Ź/','/Ż/');
    $zamienniki=Array('& #261;','& #263;','& #281;','& #322;','& #324;','& #347;','& #243;','& #378;','& #380;','& #260;','& #262;','& #280;','& #321;','& #323;','& #346;','& #211;','& #377;','& #379;');
    $zmienna=preg_replace($polskie,$zamienniki,$zmienna);
    return $zmienna;
}
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.