Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

Zeilenweise ausgeben

Hallo,

ich habe 2 verschiedene variablen mit unterschiedlich langem inahlt, welche ich auf genau drei zeilen aufteilen muss.
Bei diesen variablen handelt es sich um den Titel eines Artikels und den Untertitel.

Mein ziel ist es wie folgt die beiden variablen ausgeben zu lassen:
Der Titel soll immer vollständig ausgegeben werden. Dieser ist nie länger als 2 Zeilen. Der Rest, also die 2. bzw. 3. zeile, soll dann fuer den untertitel ausgenutzt werden.

Variablen heißen $zeile['titel'] und $zeiel['text'].
Gibt es bei PHP eine funktion, die mit Zeilen arbeitet?

Dankeschön,
Justus

Hier gehts zum Orginal Eintrag "Zeilenweise ausgeben" im Forum

Antworten

du könntest den string anhand der zeilenumbrüche "\n" auseinandernehmen und dann nach deinen vorstellungen weiterverwurschteln (was auch immer du vor hast, ich habe es nicht verstanden)
[doc]explode[/doc]


2.

also stell dir mal folgendes vor:

du hast 3 zeilen, die du voll ausfüllen musst mit dem inhalt von 2 variablen.
Bedingung: Der inhalt der ersten variable muss vollständig ausgegeben werden. Die Ausgabe des Inhalts der zweiten variable variiert je nach platz, der noch vorhanden ist.

Beispiel:
echo $zeile['titel']."<br>"; // nehmen wir an, dass diese variable nur eine zeile in anspruch nimmt
echo substr($zeile['text'],0,70); // nehmen wir an, dass 70 zeichen genau für 2 zeilen benötitgt werden.

Jedoch ist es nicht immer so einfach. Was ist wenn die erste Variable $zeie['titel'] nun 1 1/2 Zeilen in Anspruch nimmt. Dann darf die 2. variable $zeile['text'] ja dementsprechend nur noch weniger zeichen haben, da es ja nun auch nur noch eine zeile ausfüllen darf.

Ich hoffe du hast es nun verstanden. Mit dem befehl, den du mir nanntest, ist mir nämlich nicht geholfen.
Vielleicht findest du hierfür auch eine lösung.


3.

Du kannst ja die Zeichen der erste Variable zählen. Wenn das z.b. 55 sind und du nur 100 Zeichen in einer Zeile erlaubst gibst du die ersten 45 zeichen der 2 Variable aus und fügst einen zeilenumbruch ein. Dann gibst du immer die nächsten 100 Zeichen der 2 Variable aus. Also von Zeichen 46 bis 146 usw...
Wenn du dann mehr als 245 zeichen in der 2 Variable hast gibst du einfach nix mehr aus.


4.

Zitat:
Mit dem befehl, den du mir nanntest, ist mir nämlich nicht geholfen

welch ein pech aber auch ;-)

Zitat:
Vielleicht findest du hierfür auch eine lösung

nein. dafür kann es bei html ausgabe auch keine lösung geben, da du schlicht und ergreifend keine kontrolle über die darstellung im browser hast (wie große ist der anzeigebereich? welche schriftgröße hat der benutzer eingestellt? usw.)

aber du kannst gerne versuchen mit [doc]wordwrap, strlen, substr[/doc] eine annähernde lösung zusammenzubasteln.
fassen wir mal zusammen
Code:                   In Zwischenablage kopieren (nur IE)
1">

wie du den anmerkungen entnehmen kannst, sind da mehr fragen offen als geklärt, was das verhalten bei verschiedenen längen der strings angeht.


Hier gehts zum Orginal Eintrag "Zeilenweise ausgeben" im Forum
 
phpforum.de | Impressum | Handy Bundles