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 :

preg_match & accents sous CLI ou Apache [RegEx]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    ---
    Inscrit en
    Janvier 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : ---

    Informations forums :
    Inscription : Janvier 2010
    Messages : 6
    Par défaut preg_match & accents sous CLI ou Apache
    Bonjour,

    j'ai ce code qui fonctionne parfaitement en ligne de commande, mais qui n'affiche que les premiers caractères non accentués sous apache.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    $comment = '[fr]français[en]english';
    preg_match_all("/\\[(\w+)\\]([,\s\w]+)/u", $comment, $out);
    print_r($out[0]);
    en ligne de commande

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Array
    (
        [0] => [fr]français
        [1] => [en]english
    )
    sous apache

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Array
    (
        [0] => [fr]fran
        [1] => [en]english
    )
    Le fichier est en utf-8. Je ne vois pas trop où est le problème.

    Une idée ?

  2. #2
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    tu as un header php utf-8 ?
    le fichier lui même est en utf-8 ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Nouveau membre du Club
    Profil pro
    ---
    Inscrit en
    Janvier 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : ---

    Informations forums :
    Inscription : Janvier 2010
    Messages : 6
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    tu as un header php utf-8 ?
    le fichier lui même est en utf-8 ?
    Merci pour cette réponse rapide.

    Oui, comme je le disais, le fichier est en utf-8
    et il n'y a pas de problème de rendu (un strlen() m'indique bien que la chaîne n'est pas complète)

  4. #4
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    tu as ça ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header('Content-type: text/html; charset=UTF-8')
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Nouveau membre du Club
    Profil pro
    ---
    Inscrit en
    Janvier 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : ---

    Informations forums :
    Inscription : Janvier 2010
    Messages : 6
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    tu as ça ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header('Content-type: text/html; charset=UTF-8')
    Non, mais ça n'apporte rien, merci pour l'idée.

    Le fichier entier (en utf-8)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
    header('Content-type: text/html; charset=UTF-8');
    $comment = '[fr]français[en]english';
    preg_match_all("/\\[(\w+)\\]([,\s\w]+)/u", $comment, $out);
    print_r($out[0]);
    echo $out[0][0] . ':' . strlen($out[0][0]);
    donne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Array
    (
        [0] => [fr]fran
        [1] => [en]english
    )
    [fr]fran:8

  6. #6
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    je viens de tester et la seule explication que jke vois est que ton fichier n'est pas en utf-8

    Ouvre ton fichier avec notepad++
    puis regarde dans format
    convertit le en utf-8 sans BOM

    voici ce que j'obtiens avec le mon fichier en utf8 et le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     <?php
    header('charset=UTF-8');
    $comment = '[fr]français[en]english';
    preg_match_all("#\[\w+]\w+#u", $comment, $out);
    print_r($out[0]);
    echo $out[0][0] . ':' . strlen($out[0][0]);
     ?>
    Array ( [0] => [fr]français [1] => [en]english ) [fr]français:13
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

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

Discussions similaires

  1. Question d'accent sous XP
    Par ustilago dans le forum Langage
    Réponses: 2
    Dernier message: 14/03/2006, 21h49
  2. configuration virtual hosts sous windows avec apache
    Par ceriise dans le forum Apache
    Réponses: 3
    Dernier message: 05/03/2006, 20h57
  3. problème accent sous tomcat
    Par julien_lesbegueries dans le forum Tomcat et TomEE
    Réponses: 5
    Dernier message: 06/10/2005, 14h33
  4. PB : affichage de données avec accent sous delphi 6
    Par kinda dans le forum Débuter
    Réponses: 3
    Dernier message: 03/07/2003, 13h19
  5. Comment afficher les accent sous mysql v4.0.13
    Par buildozer dans le forum Requêtes
    Réponses: 2
    Dernier message: 17/06/2003, 09h33

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