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 :

Ajouter un caractère à chaque début de ligne


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 124
    Points : 57
    Points
    57
    Par défaut Ajouter un caractère à chaque début de ligne
    Bonjour,

    je code un petit script de messagerie actuellement.
    Lorsque l'on répond à un message, le message d'origine s'affiche dans le textarea.
    J'aimerais juste, comme dans la plupart des newsgroups, insérer un caractère ">" à chaque début de ligne, pour bien visualiser le message d'origine.

    Quelqu'un saurait comment faire ça ?

    merci d'avance.

  2. #2
    Membre éprouvé Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Points : 952
    Points
    952
    Par défaut
    Bonjour,

    L'utilisation d'une regex est possible, mais je pense que dans ton cas cela n'est vraiment pas obligatoire

    un simple str_replace() sur le retour charriot doit faire l'affaire

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 124
    Points : 57
    Points
    57
    Par défaut
    Bon bah ça m'ira.

    Par contre, quel est le caractère en PHP pour le retour chariot ? entre les \n, \r, <br /> je suis perdu.

  4. #4
    Membre éprouvé Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Points : 952
    Points
    952
    Par défaut
    un retour charriot est caractérisé par \n.

    Le noeud <br/> est un tag (html/xml) représentant un saut de ligne au niveau du rendu. mais celui-ci ne représente pas un retour à la ligne dans une chaine ou dans un fichier.

  5. #5
    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 : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Bonjour,

    Utiliser la constante PHP_EOL peut être une bonne alternative, ainsi on s'affranchit de la différence unix/windows

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 124
    Points : 57
    Points
    57
    Par défaut
    Citation Envoyé par s.n.a.f.u Voir le message
    Bonjour,

    Utiliser la constante PHP_EOL peut être une bonne alternative, ainsi on s'affranchit de la différence unix/windows
    Excellent alternative

    J'ai opté pour ça.

    Merci encore !

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 124
    Points : 57
    Points
    57
    Par défaut
    Ok bon, j'ai parlé un peu trop vite.

    PHP_EOL affiche bien les sauts de ligne dans le textarea. Mais pas dans le champs text de la base de données.

    J'ai essayé \n et même <br />, cette fois mon preg_replace ne les traduit pas, il les affiche en tant que tel dans le textarea.

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    un truc dans le genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ereg_replace("#(.*\n|\r)#",'X$1,chaine)
    devrait mettre un X en debut de chaque ligne

    [edit]
    après avoir testé je n'en n'étais pas trop loin ^^
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $chaine="jhkjhkjhk jh lkj lkj\nlkjlkjlkj lkj lkj lkl kj \n zear   eazr  ze  aze  rdf bcx \n sdqssdg ";
    $foo=preg_replace("#(.*(\n|\r|$))#",'X$1', $chaine);
    echo nl2br($foo);
    ?>
    sinon pour le textarea ce n'est pas bl2nr qu'il faut faire

    il faut en fait remplacer par %0A ou un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $foo=preg_replace("#(.*)(\n|\r|$))#",'%0A$1', $chaine);

Discussions similaires

  1. Ajouter un caractère en début de ligne dans un fichier
    Par morpheusmg dans le forum Débuter
    Réponses: 10
    Dernier message: 31/05/2011, 23h08
  2. Réponses: 6
    Dernier message: 28/03/2011, 13h31
  3. Ajouter mot a chaque fin de ligne
    Par Darkarcadius dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 28/10/2007, 14h22
  4. Insérer un caractère à chaque début de ligne
    Par xfree dans le forum Linux
    Réponses: 2
    Dernier message: 25/07/2007, 15h04
  5. [VBA-W]Insérer caractère en début de ligne.
    Par brandtance dans le forum VBA Word
    Réponses: 3
    Dernier message: 15/01/2007, 22h30

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