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 :

Restriction du nombre de caractères


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    329
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 329
    Points : 126
    Points
    126
    Par défaut Restriction du nombre de caractères
    Bonjour

    Je voudrai savoir si il existe une fonction qui permet d'afficher une ligne de caractère, aux nombres de caractères voulus.

    Exemple
    $NOM contient des noms allant jusqu'à 100 caractères. Mon objectif est d'afficher que 50 caractères sur les 100. Les 50 premiers.

    Je sais qu'avec la fonction STRLEN(). Je peux compter le nombre de caractère que contient $NOM.
    Par contre je n'arrive pas à trouver une fonction qui efface les caractères au-delà d'une position (50), afin d afficher $NOM en 50 caractères.

    Existe il une fonction qui permettent de faire cela ?

  2. #2
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Bonjour,

    et un classique substr() ne répondrait pas à tes attentes ?

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    329
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 329
    Points : 126
    Points
    126
    Par défaut rep
    Merci c'est la bonne solution.
    Mais je vais abandonner car je viens de voir que si je coupe sur un mot ayant des caractères spéciaux. Et que la découpe se fait sur le caractère spécial. il m'affiche un bout du caractère spécial.

    exemple:

    Nous écrire ce qui donne -> Nous écrire
    Je fais la découpe exemple à 5 en plein sur le é .
    J'obtiens
    Nous &

    Donc je suis coincé

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    316
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 316
    Points : 366
    Points
    366
    Par défaut
    bonjour,
    avant de faire ton substr(); tu peux faire un html_entity_decode(); ce qui donne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $chaine="c'est à voir cet été";
    $str=html_entity_decode($chaine);
    $str=substr($str,0,18);
    $chaine=htmlentities($str);
    comme résultat
    c'est à voir cet é
    autrement dit
    c'est à voir cet é

  5. #5
    Membre averti Avatar de BornBanane
    Homme Profil pro
    dev
    Inscrit en
    Mars 2007
    Messages
    284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Mars 2007
    Messages : 284
    Points : 416
    Points
    416
    Par défaut
    Au lieu d'avoir 500 caractères pil poil tu peux t'arrêter au dernier mot complet.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
    $str = 'ta chaine ... blabla';
    $str_cinqcent = substr($str,0,500); // coupe la chaine a 500 caracteres
    $i = strrpos($str_cinqcent,' '); // recherche du dernier espace
    $str_end = substr($str,0,$i); // on prend du début jusqu'à l'espace voulu.
     
    echo $str_end;

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    si je coupe sur un mot ayant des caractères spéciaux. Et que la découpe se fait sur le caractère spécial. il m'affiche un bout du caractère spécial.
    Pour l'utf8, il faut utiliser mb_substr()

Discussions similaires

  1. [JTextArea] limiter le nombre de caractères
    Par spoutyoyo dans le forum Composants
    Réponses: 5
    Dernier message: 14/09/2007, 15h45
  2. Réponses: 7
    Dernier message: 16/11/2004, 15h45
  3. Réponses: 2
    Dernier message: 21/09/2004, 19h01
  4. [JTextField] Limiter le nombre de caractères
    Par thomas_strass dans le forum Composants
    Réponses: 2
    Dernier message: 08/09/2004, 14h06
  5. nombre de caractère retourné...
    Par sonialem2000 dans le forum Requêtes
    Réponses: 2
    Dernier message: 02/08/2004, 04h06

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