Chaîne de caractères et ...lire la suite - PHP - Programmation
Marsh Posté le 21-08-2008 à 16:50:17
tu dois d'abord prendre les 20 premiers caractères puis ensuite passer en html. Sinon tu risque bien sur de couper en plein dans une balise, ce qui n'est pas du plus bel effet.
Marsh Posté le 21-08-2008 à 16:56:47
Et utiliser preg_replace au lieu de eregi_replace pour quelques raisons bien connues
Marsh Posté le 21-08-2008 à 19:10:42
oui, mais d'abord j'enlève les valises pour avoir le bon string, je coupe et je remplace la chaîne détectée entre mes balises et j'affiche.
J'essaye...
Marsh Posté le 21-08-2008 à 22:20:32
polo7 a écrit : oui, mais d'abord j'enlève les valises pour avoir le bon string |
Marsh Posté le 21-08-2008 à 22:42:27
n'y aurait-il pas une fonction qui permette de prendre les n premiers caractères en excluant certaines chaînes ?
Marsh Posté le 22-08-2008 à 08:31:06
tu peux toujours prendre les n premiers caractères puis casser ta chaine en considérant certain caratère comme séparateur et rassembler le tout
Marsh Posté le 16-09-2008 à 17:10:10
Salam,
j'ai une petite idée pour vous:
1-n'utilisez pas la fonction substr pour extraire les 20 caractères
2-créez une autre fonction qui fait le compte
3-quand elle rencontre le caractère '<' elle arrete de compter mais continue de concaténer
4-quand elle trouve le caracètre '>' elle continue de compter
function($chaine, $nbr_char=20)
{
$sous_chaine="";
$i=0;
$balise=false;
while($i< $nbr_char)
{
$c=substr($chaine, $i, 1);
$sous_chaine.=$c;
if($c=='<')
$balise=true;
if($balise && $c=='>')
$balise=false;
if(!$balise)
$i++;
}
}
Marsh Posté le 16-09-2008 à 17:12:09
En fait y'a strip_tags qui permet de faire ça simplement Virer tout l'HTML, garder juste le texte brute
Marsh Posté le 16-09-2008 à 21:35:53
strip_tags, substr($str,0,20)
les functions de punbb ( parser ) ont été joliment réalisées (et reprises) dans ce but
Marsh Posté le 21-08-2008 à 13:45:48
Bonjour à tous,
J'ai fais une petite news qui permet d'insérer des liens et images avec les balises :
Je passe le tout dans un eregi_replace pour mettre au format html, mais j'aimerai afficher que les 20 premiers caractères (j'ignore les images).
Le problème est que le quand c'est en html, ça prend bien plus de caractères.
Est-ce que qqun a une idée simple ?
Merci de votre aide.
Message édité par polo7 le 21-08-2008 à 13:47:52