IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Fonction tronquant un texte ! et caractere HTML


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 29
    Par défaut Fonction tronquant un texte ! et caractere HTML
    Bonsoir à tous,

    Je suis confronté à un problème dans ma fonction qui tronque une chaine de caractère.
    Si je tombe sur un caractère spécial html et/ou iso (du type ) je rencontre un problème. En effet si ma fonction tombe sur un ce type de caractère, l'affichage est affecté. Normal puisque le code iso est tronqué : il reste &#23.

    Je pense donc pouvoir outre passer ce problème grâce à une expression régulière, mais je galère à la mettre en place et l'insérer ensuite au sein de ma fonction.

    En vous remerciant par avance de l'aide que vous m'apporterez...

    Voici ma fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function coupeTexte($chaine, $longueur, $lien)
    {
        $suffix = '...';
        $short_desc = trim(str_replace(array("\r","\n", "\t"), ' ', strip_tags($chaine)));
        $desc = trim(substr($short_desc, 0, $longueur));
        $lastchar = substr($desc, -1, 1);
    		if ($lastchar == '.' || $lastchar == '!' || $lastchar == '?') $suffix='';
    			$desc .= ' <a href="'.$lien.'" title="Lire la suite" >'.$suffix.'</a>';
    		return $desc;
    }

  2. #2
    Membre Expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Par défaut
    Bonsoir,

    Pourquoi ne pas utiliser la fonction intégrée wordwrap() puis lui adjoindre le lien hypertexte voulu ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 29
    Par défaut
    Mais le lien est bien inséré.
    C'est que au niveau de l'affichage vu que je n'ai pas le code complet correspondant au caractère spécial j'ai un sigle bizarre.

  4. #4
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 494
    Par défaut
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function truncate($chaine,$debut,$max,$url,$ponct=' [...]')
    	{
    		if (strlen($chaine) >= $max)
    			{
    				$chaine = substr($chaine, $debut, $max);
    				$espace = strrpos($chaine, " ");
    				$chaine = substr($chaine, $debut, $espace).' <a href="'.$url.'"> '.$ponct.'</a>';
    			}
    		return $chaine;
    	}

Discussions similaires

  1. fonction taille du texte???
    Par pauligno dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/05/2006, 19h03
  2. [WebForms]Texte converti en HTML ?
    Par evans dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 12/04/2006, 20h47
  3. random en fonction d'une chaine de caractere
    Par tatayoyo dans le forum C
    Réponses: 6
    Dernier message: 28/02/2006, 21h23
  4. Appeler une fonction d'un script PHP depuis HTML
    Par barthelv dans le forum Langage
    Réponses: 31
    Dernier message: 27/12/2005, 11h25
  5. Fonction Comptage de chaine de caractere
    Par Boubou1283 dans le forum C
    Réponses: 14
    Dernier message: 16/10/2005, 08h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo