Ja wydobyć hiperłącze z tekstu czyli http:// i ująć je w <a href

0

Mam takie pytanie czy jest jakaś funkcja w php, która sprawdza text pod względem obecności hiperłącz i do tych hiperłącz dopisuje hiperłącze ?

2

Co dokładnie chcesz zrobić i jakie masz dane wejściowe.
Od szukania w tekście wzorca jest regexp. Zobacz np. tu:
Wyrazenie regularne pobierajace adresy z "WWW"

0

MaM COŚ takiego

 $x = "dddsdfcsdfjsnd fsufhsd uyfhdufu";
            $m = [];

            preg_match_all('~(?<![\p{L}\p{N}_])(?<!://|">)www(?:\.\S+)+\.[a-z]{2,6}(?:\S+)?(?:/|(?![\p{L}\p{N}_]))~iue', $x, $m);

I zwraca mi taki błąd ```


preg_match_all(): The /e modifier is no longer supported, use preg_replace_callback instead 
Pracuje na Laravel 6.x
0

Odpal sobie jakiegoś onlinowego tesetera regex pobaw się np. Regex101 czy jakoś tak. Usuń to 'e' z modyfikatorów. To był tylko przykład.

0

Nie chcę mi się zakładac nowego tematu tu to piszę

Bo wiadomo, że jak np. w laravelu użyjemy {{$zmienna}} to nam nie zinterpretuje kodu html, ale jak chcemy, żeby zintepretowało np. a href to musimy użyć {!! zmiewnna !!}, ale wtedy zinterpretuje wszystkie tagi html moje pytanie jest takie co trzeba użyć żeby uzyskać efekt taki żeby tylko interpretowało href ?

0

@pol90: najpierw escapujesz tagi a dopiero potem zmieniasz urle na klikalne. Wystarczy użyć funkcji e() żeby użyć escapowania laravelowego.

0

cośtam regex cośtam now you have two problems

1 użytkowników online, w tym zalogowanych: 0, gości: 1