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 :

Remplacement de caractère spéciaux [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre averti
    Inscrit en
    Septembre 2009
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 25
    Par défaut Remplacement de caractère spéciaux
    Bonjour à tous,

    Voilà j'utilise un player nommé Dewplayer, je ne passe pas par un fichier xml pour la playlist mais par un fichier php.

    Je ressort les imformations par la BDD donc, lien du fichier de musique et titre de la musique.

    Hors j'ai un soucis car dewplayer n'interprète pas les accents et donc j'aurais voulu contourner le soucis en remplacent les accents par des caractères normaux exemple : é -> e

    donc voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    $titre = stripslashes( $result['titre'] );
    $titre = strtr( $titre,'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ','AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy' );
    le soucis étant que ceci ne fonctionne pas cela m'efface tous ceux qu'il y as à partir du caractère avec accent.

    exemple :

    Métal

    donne ceci :

    M

    si j'utilise htmlentities ceci m'affiche son code ascii donc ceci

    Métal

    l'encodage du site est en iso

    Quelqun aurait'il une idée a me conseiller ?

  2. #2
    Membre Expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Par défaut
    Bonjour,

    J'utilise cette fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    function replace_accents($string){ 
        return str_replace( array('à','á','â','ã','ä', 'ç', 'è','é','ê','ë', 'ì','í','î','ï', 'ñ', 'ò','ó','ô','õ','ö', 'ù','ú','û','ü', 'ý','ÿ', 'À','Á','Â','Ã','Ä', 'Ç', 'È','É','Ê','Ë', 'Ì','Í','Î','Ï', 'Ñ', 'Ò','Ó','Ô','Õ','Ö', 'Ù','Ú','Û','Ü', 'Ý'), array('a','a','a','a','a', 'c', 'e','e','e','e', 'i','i','i','i', 'n', 'o','o','o','o','o', 'u','u','u','u', 'y','y', 'A','A','A','A','A', 'C', 'E','E','E','E', 'I','I','I','I', 'N', 'O','O','O','O','O', 'U','U','U','U', 'Y'), $string);
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo replace_accents('À bientôt');
    Pour enlever tous les caractères spéciaux de manière à ce qu'ils apparaissent dans une URL :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function niceUrl($urlname){    	    	
    	    return preg_replace(
    			array("([\40])" , "([^a-zA-Z0-9-])", "(-{2,})"), 
    			array('-', '', '-'), 
    			trim($urlname)
    		);     	
        }

  3. #3
    Membre averti
    Inscrit en
    Septembre 2009
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 25
    Par défaut
    Dommage ne fonctionne pas non plus ^^

  4. #4
    Membre Expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Par défaut
    Tu n'as pas sû l'utiliser alors car elle fonctionne très bien. Peut-on voir ton code ?

  5. #5
    Membre averti
    Inscrit en
    Septembre 2009
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 25
    Par défaut
    Sisi elle et bien utiliser car en affichage sur le site en lui même fonctionne tous comme ce que j'avais mit avant mais sur le fichier flash sa ne fonctionne pas :/

  6. #6
    Membre Expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Par défaut
    Donc la fonction marche très bien, et tu n'as pas sû l'utiliser dans un cas précis.

    Peux-tu nous montrer ton code ? Sans quoi nous ne pourrons t'aider.

  7. #7
    Membre averti
    Inscrit en
    Septembre 2009
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 25
    Par défaut
    Bon bas j'ai procéder autrement je remplace par un str_replace les code ascii par les caractères normaux

    exemple :

    str_replace( 'é', 'e', $string);

    au-faite pour ta function url un simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $name = strtr( $name,'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ','AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy' );
    $name = preg_replace('/([^.a-z0-9]+)/i', '-', $name);
    sa va plus vite

    Merci pour votre aide.

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

Discussions similaires

  1. Fonction qui remplace des caractères spéciaux
    Par ViRouF dans le forum SQL Procédural
    Réponses: 6
    Dernier message: 07/08/2006, 11h24
  2. [chaine de caractères]Remplacement de caractères spéciaux
    Par zeke the mouarfor dans le forum C
    Réponses: 5
    Dernier message: 05/06/2006, 19h30
  3. Soucis avec le remplacement de caractères spéciaux
    Par Oluha dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 04/07/2005, 12h42
  4. Réponses: 21
    Dernier message: 24/05/2005, 22h01
  5. Remplacement de caractères spéciaux
    Par willowII dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 26/04/2005, 19h13

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