Flitig postare
|
|
Reg.datum: Aug 2008
Inlägg: 301
|
|
Flitig postare
Reg.datum: Aug 2008
Inlägg: 301
|
Användbar funktion
Tänkte bara dela med mig av en användbar funktion som jag precis skapat.
Denna funktion är användbar om du vill visa en preview av en lång text. Du kan själv bestämma längden på texten. Det fiffiga med den är att den rensar bort oönskade delar av texten som skulle förstöra din preview, t.ex. bilder, javaScripts eller html. Jag vet att jag enkelt hade kunnat använda mig av striptags() för den delen men det var roligare att skapa allt själv.
Så här fungerar den, byt ut $CPtext mot den långa text du vill skapa en preview av. Byt ut $CPLength mot önskat antal tecken som din preview ska bestå av.
Exempel:
echo cleanPeek($enstortext, 1000);
Nedan ser du funktionen:
function cleanPeek ($CPtext, $CPLength) {
$CPtext = htmlentities($CPtext);
$length = strlen($CPtext);
$stepper = 0;
for ($char=0;$char<=$length;$char++) {
if (substr($CPtext,$stepper,4) == '<') {
$CPtext = substr_replace($CPtext,'',$stepper,4);
$mode = 'erase';
} else if (substr($CPtext,$stepper,4) == '>') {
$CPtext = substr_replace($CPtext,'',$stepper,4);
$mode = 'read';
} else if ($mode == 'erase') {
$CPtext = substr_replace($CPtext,'',$stepper,1);
} else {
$stepper ++;
}
}
$CPtext = html_entity_decode($CPtext, ENT_QUOTES, "UTF-8");
$cleanPeek = substr($CPtext,0,$CPLength);
$cleanPeek = substr($cleanPeek,0,strrpos($cleanPeek,' '));
return $cleanPeek;
}
Senast redigerad av robincox den 2010-05-31 klockan 17:43
|