Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Usuwanie niechcianych znaków
deha21
post
Post #1





Grupa: Zarejestrowani
Postów: 544
Pomógł: 5
Dołączył: 18.08.2009

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


Potrzebuję do ładnych linków zrobić nazwe tytułu, czyli: www.stronka.pl/news,123,tytul-jakis-fajniutki.html

Do tej pory miałem to trochę upośledzone (IMG:style_emoticons/default/winksmiley.jpg)
  1. $pattFrom = array('Ę','ę','Ó','ó','Ł','ł','Ś','ś','Ą','ą','Ż','ż','Ź','ź','Ć','ć','Ń','ń');
  2. $pattTo = array('e','e','o','o','l','l','s','s','a','a','z','z','z','z','c','c','n','n');
  3.  
  4. $polskie=str_replace($pattFrom,$pattTo,$row['title']);
  5. $space=trim(strtr($polskie," -?!:()@$%.\,\"", "--_____________"),"_-");
  6.  
  7. echo "<a href='news,".$row['id'].",".strtolower($space).".html'>".stripslashes($row['title'])."</a>";
  8.  
  9. }

Usuwa polskie znaki ale jeśli jest np. cudzysłów czy łącznik to robi _ . W sumie się nie dziwię bo tak ustawiłem ale tylko dlatego że nie wiedziałem jak to całkiem usunąć. Byłem zajęty i dopiero teraz mi się wspomniało że wypadałoby to naprawić (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
deha21
post
Post #2





Grupa: Zarejestrowani
Postów: 544
Pomógł: 5
Dołączył: 18.08.2009

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


O dzięki. Trochę sobie ulepszyłem. Zamiana na małe litery, zamiast spacji "-" a tekst "Bla bla bla - coś tam coś" przekonwertuje na "bla-bla-bla-coś-tam-coś" czyli potrójne "---" które by się wtedy tworzyło też znika. Super! (IMG:style_emoticons/default/biggrin.gif)
  1. function conv($string) {
  2. $aWhat = array('ą','ć','ę','ł','ó','ń','ś','ż','ź',' ');
  3. $aOn = array('a','c','e','l','o','n','s','z','z','-');
  4. $string = str_replace(" - "," ",$string);
  5. $converted = preg_replace('/[^a-zA-Z0-9-]*/','',str_ireplace($aWhat, $aOn, $string));
  6. return strtolower($converted);
  7. }

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: 26.12.2025 - 21:15