![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 9.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Jako że jestem tu pierwszy raz, więc witam Was! Mój problem polega na tym, iż funkcja którą napisałem nie przyniosła oczekiwanych efektów. A więc ma ona odnaleźć w stringu wyraz zaczynający się od http:// i podmieniać go na link. Zrobiłem to tak:
Proszę o podpowiedzi i poprawienie mnie. Z góry dziękuję ![]() Ten post edytował miej95 9.03.2012, 23:41:22 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Do tego typu zadań o wiele wygodniej posłużyć się wyrażeniami regularnymi. Preg_replace się kłania.
-------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 292 Pomógł: 89 Dołączył: 27.12.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Pętla foreach działa na kopii tablicy nie na oryginale, czyli jak masz taki kod:
to $wyraz nie jest tutaj elementem z oryginalnej tablicy, ale z jej kopii. Jednym z wyjść jest tutaj zastosowanie referencji (od PHP5), czyli tak:
tutaj już działasz na oryginalnych elementach Możesz też zastosować inny wariant foreach-a:
Jednak pomimo wszystko wydaje mi się, że powyższa funkcja nie zastępuje stringa linkiem tylko jak już dokleja linki na końcu poszczególnych stringów, ale może takie było twoje zamierzenie to ok ![]() -------------------- Zend Certified Engineer | Microsoft Certified Professional: Programming in HTML5 with JavaScript & CSS3 | Blog
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 9.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Ok.
Wiec teraz zmienia się na link tyle że jak znajdzie link to daje go 2 razy raz normalnie a drugi raz z tagiem <a> Np: wyjscie:
------------------ Dobra mam już. Oczywiście zły operator: nie ".=" a "=" Dzięki za pomoc!! Ten post edytował miej95 10.03.2012, 00:04:37 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 292 Pomógł: 89 Dołączył: 27.12.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Cytat Wiec teraz zmienia się na link tyle że jak znajdzie link to daje go 2 razy raz normalnie a drugi raz z tagiem <a> tak więc zacytuję sam siebie ![]() Cytat Jednak pomimo wszystko wydaje mi się, że powyższa funkcja nie zastępuje stringa linkiem tylko jak już dokleja linki na końcu poszczególnych stringów Zamień operator konkatenacji na operator przypisania i powinno być ok. Ten post edytował vonski 10.03.2012, 00:05:54 -------------------- Zend Certified Engineer | Microsoft Certified Professional: Programming in HTML5 with JavaScript & CSS3 | Blog
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 05:34 |