Page 1 sur 1

comment saisir un caractère bizarre en php

Posté : 19 mars 2014, 16:29
par nardoel
Bonjour,
Je suis confronté à un problème inédit pour moi, probablement idiot, mais je ne sais pas faire. J'ai une base de données que j'ai récupérée sur le web, avec des chaînes de caractères
codées en utf 8, comportant un caractère exotique (un point à mi-hauteur). Je voudrais en php remplacer ce caractère par une chaîne (en l'occurrence une chaîne vide, mais peu importe), avec un str_replace (caractère bizarre, "",$string). Le problème c'est que je ne sais pas ce que je dois mettre à la place de 'caractère bizarre'. Tout ce que je sais, c'est ce que je vois sur mon écran; mais je ne sais pas quel code je dois filer à php.
Quelqu'un peut-il m'aider ? Merci d'avance,
Nardoel

Re: comment saisir un caractère bizarre en php

Posté : 20 mars 2014, 15:58
par sirakawa
Fais-lui afficher la longueur de la chaîne extraite de la BDD;
tu vas trouver une valeur supérieure au nombre de caractères...
Suite quand j'aurai testé mon idée.
Cest le caractère de code Hexa c2b7 (décimal 49847) (cf http://www.utf8-chartable.de/)
Voici un bout d'idée
<?PHP
mb_internal_encoding("UTF-8");
$bidule =chr(49847);
$chaine = "Il fait".$bidule."beau";
$pos = mb_strpos($chaine, $bidule);
print "$pos dans $chaine";
$debut = mb_substr($chaine , 0 , $pos);
$fin = mb_substr($chaine , $pos+1);
print "<br>debut $debut fin $fin";
$resultat = $debut."_".$fin;
print "<br>$resultat";
?>