webForumDet fria alternativet

php fuktion

PHPur PHP

23 svar · 613 visningar · startad av Madoor · sida 2 av 2

Frågan, av Madoor

Hej hej, Vet någon av er vart jag kan läsa om hur ma gör funktioner i php? Jag vill göra en funktion som byter ut olika ord mot andra. Någon som har några bra förslag på kurser om detta?

Läs frågan i sin helhet →
Medlem sedan aug. 20002 975 inlägg
#21

Det är inte inne eller utanför, utan det är att "escapa" citationstecken i en sträng. Det kanske förvillade, gammal vana att göra så.
Jag menade samma sak som:

$bodyinfo = preg_replace($pattern, "<a href='kalle.php'>$0</a>", $bodyinfo);

$0 är samma sak som \\0 i en preg_replace. Föredrar personligen den förra då det tydligt anger att det är en variabel.

Medlem sedan sep. 200234 inlägg
#22

aha! tack så mycket för den förklaringen

Medlem sedan sep. 200234 inlägg
#23

men så hade jag visst en till fråga på lager. jag försöker att få vissa ord som står inom parantes att bli länkar. Jag har testat detta:

    $bodyinfo = preg_replace('/\[(\]kalle\[)\]/i', '\<a href="$0"\>$0\</a\>', $bodyinfo);

det gick förhållandevis bra! men det är bara det att $0 skrivs ut med parantesen. Jag vill bara att funktionen ska kolla om ordet står inom parantes och sedan skriva ut det. På det sättet jag har gjort blir ju hela parantesten (alltså ordet + parantestecknen) en länk. Jag vill bara att ordet innuti parantesten ska bli en länk.

Tack på förhand

Medlem sedan aug. 20002 975 inlägg
#24
$bodyinfo = preg_replace('/[(](kalle)[)]/i', '<a href="$1">$1</a>', $bodyinfo);

$0 är hela mönstret
$1 är första parentesen
$2 är andra parentesen o.s.v.

124 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
122 ms — hämta tråd, inlägg och bilagor (db)