webForumDet fria alternativet

Preg_match! Skapa PDF ikon av http://www.doman.se/minpdf.pdf

PHP

3 svar · 1 009 visningar · startad av Quila

Medlem sedan feb. 200522 inlägg
Frågan#1

Skulle behöva ha hjälp med en preg_match grejj.

Jag använder tidigare denna funktionen för att hitta länkar i en sträng.
function makeLinks($sourceText) {
$destText = preg_replace( "/([_a-zA-Z0-9-]+)(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+)(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,4})/", '<a href="mailto:\\0">\\0</a>',$sourceText);
$destText = preg_replace_callback('/\bhttp[^\s]+/',create_function('$matches', 'return "<a target=\"blank\" href=\"$matches[0]\">" . preg_replace("#(\.|/)#", "­$1", $matches[0]) . "</a>";'),$destText);
return $destText;
}

Jag skulle nu vilja ändra om lite och kunna skapa en länk som ser ut såhär:
<a href="http://www.doman.se/minpdf.pdf"><img src="pdfsymbol.gif"></a>
när den hittar en länk till en pdf fil.

Så att man där det står en lång länk till en pdf fil i stället får ut en symbol med en länk.

Medlem sedan juli 2001728 inlägg
#2

I nyare webbläsare, IE7, FF 2.0+ kan du använda dig av nedanstående länk för att fixa det lite smidigare

http://www.askthecssguy.com/2006/12/showing_hyperlink_cues_with_cs_1.html

Medlem sedan feb. 200522 inlägg
#3

tack för den!Visste jag inte om faktiskt. Men måste nog fixa så det funkar i andra webbläsare också. Men de är ju bra för framtiden när ie6 är ute ur leken. :)

Medlem sedan mars 20034 471 inlägg
#4

När du skriver kod, använd kodtaggarna så blir det mycket lättare att läsa! Dvs, stoppa in din kodsnutt inom [ php]<kod in här>[ /php] (fast utan mellanslag i taggarna).

För att lösa problemet i pseudokod:
Kolla om filen slutar på .pdf, i så fall använd ett annat mönster. Annars, använd det mönster du har.

246 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
121 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)