Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1528 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Chaîne de caractères et ...lire la suite

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Chaîne de caractères et ...lire la suite

n°1775465
polo7
Posté le 21-08-2008 à 13:45:48  profilanswer
 

Bonjour à tous,
J'ai fais une petite news qui permet d'insérer des liens et images avec les balises :

Code :
  1. [link:http://www.blabla.com]Titrelien[/link]
  2. [ img ]http://www.urlimage.com[ /img ] (j'ai mes des espaces pour pas l'affichage ici)


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
mood
Publicité
Posté le 21-08-2008 à 13:45:48  profilanswer
 

n°1775581
Profil sup​primé
Posté le 21-08-2008 à 16:50:17  answer
 

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.

n°1775583
FlorentG
Unité de Masse
Posté le 21-08-2008 à 16:56:47  profilanswer
 

Et utiliser preg_replace au lieu de eregi_replace pour quelques raisons bien connues :)

n°1775646
polo7
Posté le 21-08-2008 à 19:10:42  profilanswer
 

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...

n°1775708
CyberDenix
Posté le 21-08-2008 à 22:20:32  profilanswer
 

polo7 a écrit :

oui, mais d'abord j'enlève les valises pour avoir le bon string


 
 :lol:  


---------------
Directeur Technique (CTO)
n°1775719
polo7
Posté le 21-08-2008 à 22:42:27  profilanswer
 

n'y aurait-il pas une fonction qui permette de prendre les n premiers caractères en excluant certaines chaînes ?

n°1775790
antac
..
Posté le 22-08-2008 à 08:31:06  profilanswer
 

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

n°1787755
hamzafes
Posté le 16-09-2008 à 17:10:10  profilanswer
 

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++;
}
}


---------------
LLah mo3ine
n°1787758
FlorentG
Unité de Masse
Posté le 16-09-2008 à 17:12:09  profilanswer
 

En fait y'a strip_tags qui permet de faire ça simplement [:petrus75] Virer tout l'HTML, garder juste le texte brute

n°1787851
grosbin
OR die;
Posté le 16-09-2008 à 21:35:53  profilanswer
 

strip_tags, substr($str,0,20)
les functions de punbb ( parser ) ont été joliment réalisées (et reprises) dans ce but


---------------
Photos Panoramiques Montagnes Haute Savoie

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Chaîne de caractères et ...lire la suite

 

Sujets relatifs
[VBA] concaténer une chaîne de caractère dans une date[D7] structure d'un record permettant de lire un fichier .SQLITE
[ANT] Lire un fichier XMLtransformer caractères ISO/Unicode en caractères normaux
extraction d'une chaine dans un tableauComment faire pour transformer une variable en chaine UNICODE
[resolu] Chaine de charactéresRemplacement d'un caractère par un autre dans une chaine
PHP Regex date + tel + caracteresLire un fichier dans mon application web
Plus de sujets relatifs à : Chaîne de caractères et ...lire la suite


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR