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 :

Découper une chaine sans couper les mots


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 18
    Points : 17
    Points
    17
    Par défaut Découper une chaine sans couper les mots
    Bonjour,
    je bute depuis hier, sans trouver de solution sur les différents forums...

    Voilà j'ai un texte que je souhaite découper pour affichage en colonnes après l'avoir passé à flash.

    Mais mes colonnes ne sont pas ttoutes de la même taille.
    En gros j'aimerais découper ma chaine en 4 chaines : la première de N1 caracteres, la seconde de N2 caracteres, etc..... Sans couper un mot au milieu bien sûr !

    Merci pour votre aide

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Points : 716
    Points
    716
    Par défaut
    Je ne suis pas sur qu'il existe une telle fonction répondant à ton bonheur, mais en revanche quelques lignes de code suffiront, du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    $N1 = 3;
    $N2 = 3;
    $N3 = 3;
    $N4 = 3;
     
    $monTab = split(" ", $maChaine);
    $colonne = 1;
    for($i = 0 ; $i < count($monTab) ; $i++)
    {
       if(strlen($buff[$colonne].$monTab[$i]) > ${"N".$colonne})
          $colonne++;
       $buff[$colonne] .= " ".$monTab[$i];
    }

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2006
    Messages
    59
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Octobre 2006
    Messages : 59
    Points : 55
    Points
    55
    Par défaut
    bonjour,

    Moi je fais comme ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $chaine = "ta_chaine_de_caracteres";
                $lg_max = 80; //nombre de caractère autoriser
     
                if (strlen($chaine) > $lg_max)
                {
                $chaine = substr($chaine, 0, $lg_max);
                $last_space = strrpos($chaine, " ");
                $chaine = substr($chaine, 0, $last_space)."...";
                }

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 18
    Points : 17
    Points
    17
    Par défaut Cool
    ratapapa > Merci beaucoup c'est exactement ce qui me fallait !


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 12
    Dernier message: 09/12/2008, 08h43
  2. Couper une chaine mais pas les mots
    Par Mygush dans le forum C#
    Réponses: 3
    Dernier message: 08/10/2008, 12h16
  3. Réponses: 9
    Dernier message: 26/06/2007, 17h58
  4. [VB6] Découper une chaine sans délimiteur
    Par dbozec dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 13/04/2006, 19h26

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