[PHP] str_replace A n'y rien comprendre
Résolu
CaporalDead
Messages postés
216
Statut
Membre
-
CaporalDead Messages postés 216 Statut Membre -
CaporalDead Messages postés 216 Statut Membre -
Bonsoir à tous !
Voilà mon ti soucis, ça fais quelques jours que je le traine avec moi :
j'ai sur un site en construction une page sur laquelle je peux saisir un texte (input type text) et un article dans une balise textarea (pour le moment). Le soucis est que sur la page qui réceptionne ces infos je n'arrive pas à traiter le titre.
Voilà ce qui marche et ce qui ne marche pas :
// dans mon exemple le titre récupéré est : "bonjour é è à ç ù"
$titre = str_replace(" ", "_", $titre); // Ca ca marche
// maintenant aucune de ces fonctions ne fonctionne !
$titre = strtr($titre,'àáâãäçèéêëìíîïñòóôõöùúûüýÿÀÁÂÃÄÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝ',
'aaaaaceeeeiiiinooooouuuuyyAAAAACEEEEIIIINOOOOOUUUUY'); // Genere des A? A? A?
$accent = array("é","è","à","ù","ç");
$accent_rep = array("e","e","a","u","c");
$titre = str_replace($accent, $accent_rep, $titre); // Ne fait rien du tout !
Si quelqu'un à une idée ^^ Merci d'avance !
Voilà mon ti soucis, ça fais quelques jours que je le traine avec moi :
j'ai sur un site en construction une page sur laquelle je peux saisir un texte (input type text) et un article dans une balise textarea (pour le moment). Le soucis est que sur la page qui réceptionne ces infos je n'arrive pas à traiter le titre.
Voilà ce qui marche et ce qui ne marche pas :
// dans mon exemple le titre récupéré est : "bonjour é è à ç ù"
$titre = str_replace(" ", "_", $titre); // Ca ca marche
// maintenant aucune de ces fonctions ne fonctionne !
$titre = strtr($titre,'àáâãäçèéêëìíîïñòóôõöùúûüýÿÀÁÂÃÄÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝ',
'aaaaaceeeeiiiinooooouuuuyyAAAAACEEEEIIIINOOOOOUUUUY'); // Genere des A? A? A?
$accent = array("é","è","à","ù","ç");
$accent_rep = array("e","e","a","u","c");
$titre = str_replace($accent, $accent_rep, $titre); // Ne fait rien du tout !
Si quelqu'un à une idée ^^ Merci d'avance !
A voir également:
- [PHP] str_replace A n'y rien comprendre
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Php alert - Forum PHP
- Retour à la ligne php ✓ - Forum PHP
- Alert php - Forum PHP
7 réponses
Merci !!! ^^. Et dire que la solution était quasiment sous mon nez :p
Résumé :
Je n'arrivais donc pas à changer mes lettres accentuées en lettres non accentuées. Il suffisait de décoder le texte en UTF-8 et hop le tour est joué ^^.
Résumé :
Je n'arrivais donc pas à changer mes lettres accentuées en lettres non accentuées. Il suffisait de décoder le texte en UTF-8 et hop le tour est joué ^^.
à supposer que ça ne vienne pas d'un problème de charset, as tu essayé la syntaxe à 2 arguments de strtr ?
$tab_accent = array("é" => "e", "è" => "e", "à" => "a", "ù" => "u", "ç" => "c");
echo strtr($titre, $tab_accent);
$tab_accent = array("é" => "e", "è" => "e", "à" => "a", "ù" => "u", "ç" => "c");
echo strtr($titre, $tab_accent);
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
tout ça laisse penser quil y a ptet un soucis au niveau des charsets.
regardes si tu ne peux pas t'en sortir avec les fonctions htmlentities et html_entity_decode
https://www.php.net/manual/fr/function.htmlentities.php
https://www.php.net/manual/fr/function.html-entity-decode.php
regardes si tu ne peux pas t'en sortir avec les fonctions htmlentities et html_entity_decode
https://www.php.net/manual/fr/function.htmlentities.php
https://www.php.net/manual/fr/function.html-entity-decode.php