webForumDet fria alternativet

Korta ner en sträng

PHP

8 svar · 408 visningar · startad av mr.mainline

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

Hur kortar jag ner en sträng som är för lång?

om jag t.ex vill ha 50 tecken sen kommer ... så man får klicka på länken för att läsa hela.

Medlem sedan mars 20025 907 inlägg
#2

substr()

Medlem sedan feb. 2003777 inlägg
#3

hittade detta men får inte det att funka, vad är fel?

<?php
function kortaner($inlagg, $length, $trailing)
{
if (strlen($inlagg) > $length)

$length-=strlen($trailing);

return substr($inlagg,0,$length).$trailing;
}
else{

$res=$inlagg;
}

return $res;
}
  
?>

Får detta felmeddelande:
Parse error: parse error, unexpected T_ELSE in /customers/freddeholm.com/freddeholm.com/httpd.www/func.php on line 47

Medlem sedan juni 20006 031 inlägg
#4

Du har glömt { efter din if sats

if (strlen($inlagg) > $length) {
Medlem sedan juni 200032 967 inlägg
#5

Om du indenterar koden så ser du att else och allt under ligger utanför funktionen.

<?php
function kortaner($inlagg, $length, $trailing)
{
	if (strlen($inlagg) > $length)
		$length-=strlen($trailing);
	return substr($inlagg,0,$length).$trailing;
}
else{
	$res=$inlagg;
}
return $res;
}
?>

klamra in det som tillhör if med måsvingar för att visa att båda de raderna hör till if-delen, så borde det gå bättre.

edit: ska man verkligen gå på toaletten mitt i inläggsskrivning? :)

Medlem sedan feb. 2003777 inlägg
#6

ok,men nu detta fel meddelande:

Warning: Missing argument 2 for kortaner() in /customers/freddeholm.com/freddeholm.com/httpd.www/func.php on line 38

Warning: Missing argument 3 for kortaner() in /customers/freddeholm.com/freddeholm.com/httpd.www/func.php on line 38

Medlem sedan juni 200032 967 inlägg
#7

Skickar du in alla tre argumenten till funktionen då?

Medlem sedan feb. 2003777 inlägg
#8

Jag fixade det så här:

<?php
function kortaner($inlagg, $length=20, $trailing="...")

Så nu funkar det.

Medlem sedan juni 200032 967 inlägg
#9

Tips från coachen: indentera alltid, så är det lättare att fånga upp fel i koden.

Mvh

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