webForumDet fria alternativet

långa titlar

PHP

4 svar · 14 509 visningar · startad av McMiller

Medlem sedan okt. 2000238 inlägg
Frågan#1

lyckades göra en kodsnutt som kortar ner för långa titlar eller vad det nu kan vara och lägger till ...

<font size="1" face="Verdana, Arial, Helvetica, sans-serif">Kod:<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#006666">
$test="testtesttesttesttesttesttesttest";
$len=strlen($test);
if ($len>25) {
$rest=$len-25;
$string=substr($test,25,$rest);
$streng=substr($test,0,25);
$temp=str_replace($string,"...",$string);
echo("$streng$temp");
}
else {
echo $test;
}

bryr mig inte om att lägga in några creditkommentarer, då det detta inte är särskilt svårt att göra på egen hand...jag är ju nybörjare och lyckades :e

------------------
McMiller a.k.a Visslaren

Medlem sedan sep. 200522 inlägg
#2

Bra gjort för en nybörjare men du kan använda funktionen substr.

function shortTitle ($str, $len) {
   return substr($str, 0, $len) . "...";
}
echo shortTitle('This is an long string.', 10);

Lycka till.

Medlem sedan mars 20025 907 inlägg
#3

Tråden är drygt 4½ år gammal och trådskaparen har inte varit aktiv på drygt 3 år....

Medlem sedan sep. 200522 inlägg
#4

Oj, jag tänkte inte allts på det men det kan vara bra att ha en lite mera effektivare funktion om någon skulle söka på just en sådan funktion :)

Medlem sedan juli 20033 147 inlägg
#5

Smidigare är ju om man endast lägger på "..." om strlen($str) har färre tecken än $len.

function shortTitle($str, $len, $end='...') {
   return (strlen($str) > $len ? substr($str, 0, $len-strlen($end)) . $end : $str);
}
392 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
124 ms — deklarationer (db)
130 ms — hämta statistik (db)
133 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)