2 Stimmen

Eine Zeichenkette rekursiv schneiden

Ich habe eine Zeichenfolge, und ich muss es in einem div drucken.

Die Breite des Divs ist begrenzt, d.h. wenn viele Zeichen nahe beieinander liegen, verlässt die Zeichenkette das Div.

Denken Sie einfach an eine width:30px div und eine Zeichenfolge wie hellomynameismarcoandilikemadewebapplicationinmyfreetimes .

Ich brauche also eine Art von Funktion auf php, die rekursiv die Zeichenfolge schneiden; Ich meine, schneiden Sie die Zeichenfolge und fügen Sie etwas wie <br/> .

Ein weiteres Problem ist, dass meine Zeichenkette durch htmlentities($string, ENT_QUOTES, "UTF-8"); , so dass die <br/> wird scheitern.

Wie kann ich das mit PHP machen?

EDIT Meine endgültige Lösung

function printMyStrings($str, $width) {
    return ereg_replace("&lt;br/&gt;","<br/>", htmlentities(wordwrap($str, $width, "<br/>", true), ENT_QUOTES, "UTF-8"));
}

3voto

chunk_split ( $string , 80 ,"<br>");

2voto

Michael Berkowski Punkte 260923

Das Folgende wird fest eingepackt bei $width . Dokumente über wordwrap()

$width = 30;
$wrapped_string = wordwrap("Hellomynameismarcoandilikemadewebapplicationinmyfreetimes.", $width, "\n", TRUE);

// nl2br to add HTML linebreaks
echo nl2br($wrapped_string);

2voto

ariel Punkte 14427

Fügen Sie einfach ein Leerzeichen ein, und der Browser kümmert sich um die Unterbrechung für Sie

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X