Césure des mots dans du PHP

mdpubs -  
 mdpubs -
Bonjour,

Voilà, je voudrai intégrer une césure de mot dans ce code (Description). Si vous avez une idée :o) :
-------------------------------
<?php

$resultat['description'] = htmlspecialchars($resultat['description']);
if ( $type=='search' ) {
for ( $i=0; $i<$nb_mots; $i++ ) {
$resultat['description'] = keyword_in_bold($mots_reels_recherches[$i],$resultat['description']);
};
};
echo $resultat['description'];

?>
--------------------------------

Merci :o)

6 réponses

  1. Alain_42 Messages postés 5413 Statut Membre 904
     
    Je t'ai trouvé ça sur le web, je ne sais pas si cela t'irra ?

    site:http://www.expreg.com/lire-Chaines-source

    Césure sur des mots V3 Posté par Yves Maistriaux

    Et voiçi encore une autre version de césure sur des mots sans couper les attributs des balises HTML
    <?php
    $texte = 'Unmotbientroplongécritparunenfoirédansunforum suivi d\'un autre avec balise html
    <strong class="pouet" style="background-image;width:130px;"><u><b><i>énorme,
    unmotvraimenténormedanscetexte</i></b></u></strong> et un mottrèslongbeaucouptroplong';

    $min='25';
    function coupe_mot($match,$longueur=15,$inserer='*')
    {
    return wordwrap($match[1],$longueur,$inserer,1);
    }
    $texte1=preg_replace_callback(''\b([[:alnum:]]{'.$min.',})\b'','coupe_mot', $texte);

    echo htmlentities($texte1);
    ?>
    0
  2. mdpubs
     
    Salut Alain,

    Ouai, j'ai trouvé ça aussi, mais vu que mes variables fonctionnent du genre :

    $resultat['description'] et non $description

    du coup j'ai pas réussi à l'intégrer dans mon code ci-dessus. J'ai essayé pleins de façon, mais rien ne marche. Faut dire que je débutant en PHP, alors j'ai vite mes limites !

    Si tu sais comment l'intégrer dans mon code ci-dessus ?

    A+ :o)
    0
  3. Alain_42 Messages postés 5413 Statut Membre 904
     
    he bien mets:

    $description = $resultat['description'] ;
    0
  4. mdpubs
     
    Bonjour Alain,

    J'ai fais ça, mais ça marche pas :

    ------------------------
    <?php

    $resultat['description'] = htmlspecialchars($resultat['description']);
    if ( $type=='search' ) {
    for ( $i=0; $i<$nb_mots; $i++ ) {
    $resultat['description'] = keyword_in_bold($mots_reels_recherches[$i],$resultat['description']);

    echo $resultat['description'];
    $description = $resultat['description'] ;
    $min='25';
    function coupe_mot($match,$longueur=15,$inserer='*')
    {
    return wordwrap($match[1],$longueur,$inserer,1);
    }
    $description1 = preg_replace_callback(''\b([[:alnum:]]{'.$min.',})\b'','coupe_mot', $description);

    echo htmlentities($description1);
    };
    };

    ?>
    --------------------------------------

    Il me met cette erreur :

    --------------------------------------
    Warning: Unexpected character in input: '\' (ASCII=92) state=1 in pub-site.php on line 124

    Parse error: syntax error, unexpected T_STRING in pub-site.php on line 124
    --------------------------------------

    La ligne 124, c'est celle là :

    -----------------------------------
    $description1 = preg_replace_callback(''\b([[:alnum:]]{'.$min.',})\b'','coupe_mot', $description);
    ------------------------------------

    Si tu as une idée :o)...
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Alain_42 Messages postés 5413 Statut Membre 904
     
    comme ça ça marche mieux mais le résulta n'est pas probant

    $texte = 'Unmotbientroplongécritparunenfoirédansunforum suivi d\'un autre avec balise html
    <strong class="pouet" style="background-image;width:130px;"><u><b><i>énorme,
    unmotvraimenténormedanscetexte</i></b></u></strong> et un mottrèslongbeaucouptroplong';
    
    $min='25';
    function coupe_mot($match,$longueur=15,$inserer='<br />')
    {
    return wordwrap($match[1],$longueur,$inserer,1);
    }
    $texte1=preg_replace_callback('/\b([[:alnum:]]{'.$min.',})\b/','coupe_mot', $texte);
    
    echo $texte1;
    0
  7. mdpubs
     
    Merci Alain,

    Je retiens ton idée et dès que j'aurai une minute j'essaierai. Là je suis en train de finaliser mon nouveau projet et j'ai une tonne de chose à faire. Encore quelques problèmes techniques à réglé et tout sera ok. Tes conseils m'ont été précieux. Merci une nouvelle fois :o)

    Passe une belle journée.

    mdpubs
    0