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 :

[Tableaux] Convertir les accent, et seulement ceux-ci, en leur entité HTML respective


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Avril 2006
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 268
    Points : 101
    Points
    101
    Par défaut [Tableaux] Convertir les accent, et seulement ceux-ci, en leur entité HTML respective
    Bonjour,

    je cherche une fonction qui permet de convertir tous les accents en HTML sans que celle-ci ne touche au balises HTML.

    Il y a htmlentities () mais le problème c'est qu'elle convertit aussi les balises comme par exemple <br>, du coups le <br> n'est plus interprété comme une balise HTML... donc en clair je cherche une fonction qui ne convertit pas les <> !

    Voila quelqu'un a-t-il une idée ?

  2. #2
    Membre régulier
    Inscrit en
    Avril 2006
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 268
    Points : 101
    Points
    101
    Par défaut
    Bon pour le moment je n'ai trouvé que la solution suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $trans = array("à" => "&agrave;", "À" => "&Agrave;", "á" => "&aacute;", "Á" => "&Aacute;", "â" => "&acirc;", "Â" => "&Acirc;", "ä" => "&auml;", "Ä" => "&Auml;", "ã" => "&atilde;", "Ã" => "&Atilde;", "å" => "&aring;", "Å" => "&Aring;", "è" => "&egrave;", "È" => "&Egrave;", "é" => "&eacute;", "É" => "&Eacute;", "ê" => "&ecirc;", "Ê" => "&Ecirc;", "ë" => "&euml;", "Ë" => "&Euml;", "ì" => "&igrave;", "Ì" => "&Igrave;", "í" => "&iacute;", "Í" => "&Iacute;", "î" => "&icirc;", "Î" => "&Icirc;", "ï" => "&iuml;", "Ï" => "&Iuml;", "ò" => "&ograve;", "Ò" => "&Ograve;", "ó" => "&oacute;", "Ó" => "&Oacute;", "ô" => "&ocirc;", "Ô" => "&Ocirc;", "ö" => "&ouml;", "õ" => "&otilde;", "Õ" => "&Otilde;", "ø" => "&oslash;", "Ø" => "&Oslash;", "ù" => "&ugrave;", "Ù" => "&Ugrave;", "ú" => "&uacute;", "Ú" => "&Uacute;", "û" => "&ucirc;", "Û" => "&Ucirc;", "ü" => "&uuml;", "Ü" => "&Uuml;", "ÿ" => "&yuml;", "Ÿ" => "&Yuml;", "ñ" => "&ntilde;", "Ñ" => "&Ntilde;", "ç" => "&ccedil;", "Ç" => "&Ccedil;", "¿" => "&iquest;", "Æ" => "&Aelig", "æ" => "&aelig;", "ý" => "&yacute;", "€" => "&euro;");
     
    echo strtr("tototititutu", $trans);
    j'ai mis 30min à faire cette table à la co* lol, alors si vous avez une autre solution faites moi signe

  3. #3
    Membre expert
    Avatar de Alexandre T
    Homme Profil pro
    Chef de projets AMO
    Inscrit en
    Mai 2002
    Messages
    1 213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projets AMO
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 213
    Points : 3 001
    Points
    3 001
    Par défaut
    Je t'invite à étudier la fonction gethtmltranslationtable.

    Dans la documentation PHP, tu découvriras que cette fonction te permet de récupérer un tableau. Tu vires toutes les valeurs qui te sont inutiles et tu utilises ensuite la fonction strstr.

    Voici le lien vers la documentation
    http://fr3.php.net/manual/fr/functio...tion-table.php

    L'exemple 1 est très explicite. Entre la ligne 2 et la ligne 3, il te suffit de virer des éléments du tableau stocké dans la variable $trans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
    $trans = get_html_translation_table(HTML_ENTITIES);
    // Ici tu vires les éléments en trop dans le tableau $trans
    $str = "Hallo & <Frau> & Krämer";
    $encoded = strtr($str, $trans);
    ?>

  4. #4
    Membre régulier
    Inscrit en
    Avril 2006
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 268
    Points : 101
    Points
    101
    Par défaut
    Merci mais je ne comprends pas comment retirer des éléments du tableau car par exemple quand je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $trans = get_html_translation_table(HTML_ENTITIES);
     
     
    echo "<br>";
    for($i=0; $i<sizeof($trans); $i++)
    {
    	echo $i." = ".$trans[$i]."<br>";
    }
    le tableau est vide...

  5. #5
    Membre régulier
    Inscrit en
    Avril 2006
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 268
    Points : 101
    Points
    101
    Par défaut
    Ah ok ce n'est pas des numéros mais directement les caractères Bon je vais testé ça alors.

  6. #6
    Membre régulier
    Inscrit en
    Avril 2006
    Messages
    268
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 268
    Points : 101
    Points
    101
    Par défaut
    Donc en résumé, cela donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $trans = get_html_translation_table(HTML_ENTITIES);
     
    unset($trans['<']);
    unset($trans['>']);
     
    echo strtr("blablabla", $trans);

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

Discussions similaires

  1. [AJAX] Convertir les accents d'une page en ASCII
    Par Meri Nose dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 07/11/2008, 13h04
  2. Réponses: 6
    Dernier message: 14/02/2008, 16h32
  3. Convertir les accents
    Par hacksi dans le forum Général JavaScript
    Réponses: 17
    Dernier message: 14/02/2008, 12h38
  4. [Tableaux] Enlever les accents
    Par Invité dans le forum Langage
    Réponses: 4
    Dernier message: 30/03/2007, 10h21
  5. Convertir les accents en &aacute; & Co.
    Par titoumimi dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 14/03/2006, 12h51

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