Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]str_replace()
Forum PHP.pl > Forum > Przedszkole
kleszczoscisk
  1. <?
  2. $file = file('include/ads.txt');
  3. //struktura pliku - każde słowo w nowej linii, kodowanie UTF-8:
  4. //pudełko
  5. //kartonik
  6. //paczka
  7. //opakowanie
  8.  
  9. $keys = implode(",", $file);
  10. $keys = explode(",",$keys);
  11.  
  12. $replaces = implode("</strong>,<strong>", $file);
  13. $replaces = '<strong>'.$replaces.'</strong>';
  14. $replaces = str_replace("\n", '', $replaces);
  15. $replaces = str_replace("\r", '', $replaces);
  16. $replaces = explode(",",$replaces);
  17.  
  18. print_r($keys);
  19. echo '<hr />';
  20. print_r($replaces);
  21. echo '<hr />';
  22.  
  23. $wynik = str_replace($keys, $replaces, $tresc_do_podmiany);
  24.  
  25. ?>

Co w tym kodzie jest źle, że str_replace() nie zamienia słów z jednej tablicy na słowa wyróżnione z drugiej?
athei
Trochę namieszałeś. To powinno zadziałać.
  1. $file = file('ads.txt');
  2. $keys = implode(",", $file);
  3. $keys = str_replace(array("\r","\n"),'',$keys);
  4. $keys = explode(",",$keys);
  5.  
  6. function zamiana($n) {
  7. return '<strong>'.$n.'</strong>';
  8. }
  9. $bb = array_map("zamiana", $keys);
  10.  
  11. $wynik = str_replace($keys, $bb, $tresc_do_podmiany);
kleszczoscisk
Dzięki serdeczne
  1. <?
  2. $file = file('include/ads.txt');
  3. $keys = implode(",", $file);
  4. $keys = str_replace(","," , ",$keys); //dodane aby zamieniane były tylko całe wyrazy
  5. $keys = str_replace(array("\r","\n"),'',$keys);
  6. $keys = explode(",",$keys);
  7.  
  8. function zamiana($n) {
  9. return '<strong>'.$n.'</strong>';
  10. }
  11. $bb = array_map("zamiana", $keys);
  12. $wynik = str_replace($keys, $bb, $w['content']);
  13. echo $wynik;
  14. ?>
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.