Question

En utilisant exploser je me suis cassé le texte en morceaux, nous alors le foreach pour trouver un peu chose dans le texte.

$pieces = explode(' ', $text);

foreach ($pieces as $piece) {
    Some Modification of the piece
}

Mes questions Comment puis-je mettre ces morceaux ensemble? Je peux donc wordwrap le texte. Certains comme ceci:

piece 1 + piece 2 + etc
Était-ce utile?

La solution

Voici mon

$text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ornare tincidunt euismod. Pellentesque sodales elementum tortor posuere mollis. Curabitur in sem eu urna commodo vulputate.\nVivamus libero velit, auctor accumsan commodo vel, blandit nec turpis. Sed nec dui sit amet velit interdum tincidunt.";

// Break apart at new lines.
$pieces = explode("\n", $text);

// Use reference to be able to modify each piece.
foreach ($pieces as &$piece)
{
    $piece = wordwrap($piece, 80);
}

// Join the pieces together back into one line.
$wrapped_lines = join(' ', $pieces);

// Convert new lines \n to <br>.
$wrapped_lines = nl2br($wrapped_lines);
echo $wrapped_lines;

/* Output:
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ornare tincidunt<br />
euismod. Pellentesque sodales elementum tortor posuere mollis. Curabitur in sem<br />
eu urna commodo vulputate. Vivamus libero velit, auctor accumsan commodo vel, blandit nec  turpis. Sed nec<br />
*/

Autres conseils

Vous utilisez la fonction implode().

http://php.net/manual/en/function.implode.php

string implode ( string $glue , array $pieces )
string implode ( array $pieces )

EDIT: Peut-être jamais la question la plus trompeuse.

Si vous essayez de les envelopper mot les images que vous construisez, vous pourriez peut-être les mettre tous dans INDIVIDU de div pour le flotteur. De style gauche

Tout d'abord, si vous souhaitez modifier chaque $piece dans la ligne de boucle, vous devez boucle sur les éléments tels que références :

foreach ($pieces as &$piece)

Lorsque la boucle est terminée, vous pouvez produire à nouveau une seule chaîne en utilisant join():

$string = join(' ', $pieces);

(Le premier paramètre à join() est le séparateur qui colle les morceaux ensemble. Utilisez ce qui convient à votre application.)

Toutes les réponses pour faire beaucoup beaucoup plus difficile qu'elle ne l'est. Pourquoi ne pas remettre ensemble que vous le modifier? Je pense que c'est ce que vous recherchez.

$pieces = explode(' ', $text);

// text has already been passed to pieces so unset it
unset($text);

foreach ($pieces as $piece) {
    Some Modification of the piece
    // rebuild the text here
    $text .= {MODIFIED PIECE};
}

// print the new modified version
echo $text;

$pieces = implode(' ', $pieces);

La question est assez déroutant, mais serait quelque chose comme ce travail:

$new = implode(' ', $pieces);
echo wordwrap($new, 120); // wordwrap 120 chars
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top