Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Moduł tagów
djgarsi
post
Post #1





Grupa: Zarejestrowani
Postów: 459
Pomógł: 26
Dołączył: 1.06.2009

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


Witam. Jestem w trakcie pisania modułu dla pewnego serwisu. Jest to moduł tagów.
Oto mój kod który niby działa, lecz nie do końca:
  1. <?php
  2.  
  3. $string = "jakis super fajnie dlugi ciag znakow.";
  4.  
  5. $string = preg_replace('#[.,)(!]+#', '', $string);
  6. $text = explode(' ', $string);
  7. $words = array();
  8. $len = 0;
  9.  
  10. foreach ($text as $str) {
  11. $word = preg_replace('#[^a-ż]+#i', '', $str);
  12. if (mb_strlen($word) > 0) {
  13. $words[] = $word;
  14. $len += mb_strlen($word);
  15. }
  16. }
  17.  
  18. echo'Tagi: ';
  19.  
  20. for($i=0;$i<=$len;$i++)
  21. {
  22. echo '<a href="/tagi/'.$words[$i].'.html">'.$words[$i].'</a> ';
  23. }
  24.  
  25. ?>


A oto wyświetlane błędy:
Kod
Notice: Undefined offset: 8 in D:\Serwer\www\index.php on line 23
Notice: Undefined offset: 8 in D:\Serwer\www\index.php on line 23
Notice: Undefined offset: 9 in D:\Serwer\www\index.php on line 23
Notice: Undefined offset: 9 in D:\Serwer\www\index.php on line 23
Notice: Undefined offset: 10 in D:\Serwer\www\index.php on line 23
Notice: Undefined offset: 10 in D:\Serwer\www\index.php on line 23
Notice: Undefined offset: 11 in D:\Serwer\www\index.php on line 23
... itd.


Co robię źle w powyższym kodzie?

Ten post edytował djgarsi 17.02.2011, 10:36:33
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Wynikowo? Zadna.

Tak samo jak w wyniku nie ma żadnej różnicy między:
1) Iśc do kuchni z pokoju przez przedpokój
2) Iść do kuchni przez balkon do sąsiadów a potem od nich z okna kuchni do naszej kuchni.
Wynik i tu i tu jest takim sam, z tym, że w drugim przypadku więcej się namęczysz i możesz skręcić kark.

Także Twoj "potworek" max(array_keys($words)) akurat dla tej tablicy zwróci taki sam wynik co count() z tym, że Twoj potworek wykona przy tym wiecej operacji i się bardziej zmęczy.
Fakt, różnica zapewne dla Twoich danych nie będzie w ogóle widoczna, ale Ty teraz uczysz się programować i uczysz się programować cholernie nieoptymalnie, bez pomyślunku i durnym kombinowaniem zamiast po prostu użyć coś, co do danej rzeczy jest stworzone (IMG:style_emoticons/default/smile.gif)
Powód edycji: [nospor]:
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 - 15:47