Qqch dans le genre, à affiner
function foo($texte, $taille, $separateur) { $lensep = strlen($separateur); $lignes = array(); do { // si aucun intérêt à chercher un séparateur ou si aucun séparateur trouvé if( ( strlen($texte) < $taille + $lensep ) || ( ($pos = strpos($texte, $separateur, $taille))===false ) ) { $lignes[] = $texte; // prend la fin du texte break; } $lignes[] = substr($texte, 0, $pos); // prend jusqu'au séparateur $texte = substr($texte, $pos + $lensep); // réduit le texte sans le séparateur } while($texte); return $lignes; }