Hello Hugo,
wie kann ich eine Variable nach einer bestimmten
Anzahl von Zeichen mit 3 Punkten abtrennen.
$test = 'diesisteinlangerstring';
PHP_Funkion($test) -> Ausgabe: diesis...
auf die Gefahr hin, dass hier wieder Beschwerden kommen von Oberlehrern[tm]
Du solltest erstmal entscheiden, wie lang der String werden darf inclusive der Punkte:
define("MAXSTRLEN",22); # nur so als Beispiel
Dann überlegst Du, was Du als Fortsetzungshinweis hinten anhängst:
$fort = "...";
Dann holst Du Dir deinen String:
$langstring1 = "Ich bin lang";
Dann entscheidest Du, ob der abgeschitten werden muss
if (strlen($langstr1) > (MAXSTRLEN - strlen($fort))
{
$langstr1 = substr($langstr1,0,(MAXSTRLEN - strlen($fort)).$fort;
}
else
{
## alles so lassen wie es ist
$langstr1 = $langstr1; ## das kann man dann natürlich auch weglassen
}
mal eben zur Kontrolle ausgeben
echo $ langstr1."<br />";
Dann machst Du das mit einem anderen String Deiner Wahl:
$langstring2 = "Ich bin aber viel länger als der andere";
Dann entscheidest Du, ob der abgeschitten werden muss
if (strlen($langstr2) > (MAXSTRLEN - strlen($fort))
{
$langstr2 = substr($langstr2,0,(MAXSTRLEN - strlen($fort)).$fort;
}
else
{
## alles so lassen wie es ist
$langstr2 = $langstr2; ## das kann man dann natürlich auch weglassen
}
mal eben zur Kontrolle ausgeben
echo $ langstr2."<br />";
und stellst fest, dass da irgendwie Mist passiert ist und Cheatah
seinen Hals immer viel zu früh aufreißt, denn sooo trivial ist
das Probelem gar nicht.
Also, wenn man weiß, in welchem Format (z.B. RAW ASCII oder HTML) die
Strings vorliegen, ist das alles kein Problem. Aber viele Texte für die
HTML-Ausgabe liegen eben schon als HTML vor. Da können Entities im Text
enthalten sein oder auch Tags. Was tun?
Ich denke, das das Problem es wert ist, dass man genauer darüber
nachdenkt und nicht irgendwelche Manualseiten mit den Stringfunktionen
zitiert.
Liebe Grüße aus http://www.braunschweig.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen