<?PHP
/*--------------------------------------------------------*\
Auteur Rens
Functie afkorten
$sText Invoer van de text
$iLengte maximale lengte van de text
Return $sRet Text van x aantal tekens
\*--------------------------------------------------------*/
// We declareren de functie met de juiste variabelen
function afkorten ($sText, $iLengte)
{
// we declareren $sRet
// deze retourneren we op het eind
$sRet = "";
// kijken of de text ook daadwerkelijker langer is dan
// het max aantal tekens opgegeven via $iLengte
{
// we exploden de text op een spatie
// we doorlopen de array die we gecreëerd hebben
// dit doen we net zolang totdat de lengte van de nieuwe string ($sRet)
// groter dan of gelijk aan de lengte van $iLengte is
for($i = 0; $i < count($aText); $i++) {
// is de lengte nog niet langer dan $iLengte?
{
// kijken of $sRet al een waarde heeft i.v.m. eerste spatie
// zo nee, eerste waarde toe kennen
// is het wel zo, dan voegen we <spatie><woord> toe aan $sRet
$sRet = empty($sRet) ?
$aText[$i] : $sRet." ".$aText[$i]; } else
{
// $sRet heeft de max lengte van $iLengte bereikt
// de puntjes er achter plakken en de for loop stoppen
$sRet .= "...";
break;
}
}
}
// de nieuwe waarde retourneren
return $sRet;
}
// $iLengte bevat de lengte van de string
// Deze zetten we nu op 20
$iLengte = 20;
// $sText bevat de text die afgekapt moet worden
$sText = "Dit is een hele lange zin die meer dan ".$iLengte." tekens bevat en dus afgekapt gaat worden.";
// we roepen de functie aan en printen de nieuwe op het scherm
echo afkorten
($sText, $iLengte);