Bonjour,

mes problème de gestion d'UTF-8 sous windows continuent...j'espère que cette question-ci aura plus de succès que la dernière.

Avant toute chose, je travaille ainsi:

J'interroge une base de données en UTF-8, à l'aide d'un script PHP écrit sous PSPad en UTF-8 (c'est lui qui le dit).

Dans ma base donnée, je récupère deux mots, l'un en majuscule, l'autre en minuscule, tous deux en UTF-8 (j'insiste, oui...) que je souhaite comparer.

Pour ceci j'utilise le processus suivant:

Soit $forme1 et $forme2 récupérées par requête sql :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
$forme1 = mb_strtolower($forme1, "utf-8");
if(strcmp($forme1, $forme2) == 0)
{
   blabla;
}
else
{
   blibli;
}
J'ai essayé en utilisant directement strcasecmp, ou simplement ==, ça ne fonctionne pas non plus. Les chaînes contenant des caractères accentuées ne sont pas reconnues comme étant identiques.

Quelqu'un sait pourquoi? Et comment faire pour qu'elles le soient?