Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Zamiana polskich znaków, na ich zamienniki bez ogonków
b_chmura
post
Post #1





Grupa: Zarejestrowani
Postów: 813
Pomógł: 34
Dołączył: 18.03.2007
Skąd: o stamtąd

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


Witam
Sporządziłem sobie poniższą funkcję ale niestety zamiast zamieniać polskie znaki na odpowiedniki bez ogonków na stronie wyświetlają mi się dziwne znaczki typu: ���l� (nie wiem czy się wyświetlą)

Funkcja:
  1. <?php
  2. function modrewrite($text)
  3. {
  4.  $text = strtr(strtolower($text), 'ęóąśłźżćń', 'eoaslzzcn');
  5.  $text = preg_replace("'[[:punct:]]'",'',$text);
  6.  $text = preg_replace("'[[:space:]]'",'_',$text);
  7.  return  preg_replace_callback('#(.+)1{1,}#', create_function('$a', 'return substr($a[0], 0, 1);'), $text);
  8. }
  9. ?>


byłbym wdzięczny za pomoc, pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ArekJ
post
Post #2





Grupa: Zarejestrowani
Postów: 266
Pomógł: 9
Dołączył: 21.05.2008
Skąd: Łomianki

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


JEżeli ci wywala te krzaki to może źle je pobiera z bazy danych? Ja miałem podobny problem(robiłem wersje strony dla przenośnej konsoli) i dałem zaraz po zapytaniu, które wybiera bazę danych to:
  1. <?php
  2. mysql_query("SET NAMES 'utf8'");
  3. ?>

a funkcja odpowiedzialna za zmianę znaków z ogonkami na odpowiedniki bez ogonkow to:
  1. <?php
  2. function usun_polskie_znaki($ciag)
  3.    {
  4.    $co = array("ź", "ż", "ć", "ń", "ł", "ś", "ą", "ę", "ó", "Ź", "Ż", "Ć", "Ń", "Ł", "Ś", "Ą", "Ę", "Ó");
  5.    $na_co = array("z", "z", "c", "n", "l", "s", "a", "e", "o", "Z", "Z", "C", "N", "L", "S", "A", "E", "O");
  6.    
  7.    $zmieniony_ciag = str_replace($co, $na_co, $ciag);
  8.    return $zmieniony_ciag;
  9.    }
  10. ?>
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: 3.10.2025 - 17:15