Bonjour a tous,
voila je souhaite découper un texte a la fin de la phrase se situant juste avant le xième caractère. j'ai réussi a faire quelque avec str_replace().
Le souci est que le texte comprend du html donc si je compte les nombre de de caractère il compte les caractère compris dans les balise
si j'ai le texte
la chaine sera couper a
Code : Sélectionner tout - Visualiser dans une fenêtre à part 01<a href="' . tep_href_link(FILENAME_CLASSIFICATION, 'cid=59') . '">2</a>345678910
et non
Code : Sélectionner tout - Visualiser dans une fenêtre à part 01<a href="'
voila mon code a l'etat actuel
Code : Sélectionner tout - Visualiser dans une fenêtre à part 0123456789
j'ai bien pensé a supprimer les balise, mais alors comment récuperer après le point de point avec balise??
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 $cut = 800; $chaine = str_replace('"\' . ','"\'.',$classification['classification_description']); $chaine = str_replace(' . \'"',' .\'"',$chaine); $chaine_de_decoup1 = '. '; $chaine_de_decoup2 = '. '; $long_chaine = strlen ($chaine); if ($long_chaine < $cut) { echo 'la chaine est trop petit : '.$long_chaine.'caractere<br>'; eval('echo \''.$chaine.'\';'); } else { $oucouper1 = strrpos($chaine, $chaine_de_decoup1, -($long_chaine-$cut))+2; $oucouper2 = strrpos($chaine, $chaine_de_decoup2, -($long_chaine-$cut))+2; $oucouper3 = ($oucouper1>$oucouper2?$oucouper1:$oucouper2); eval('echo \''.substr($chaine, 0, $oucouper3).'\';'); $text_cut = 1; }
Merci a vous
Partager