le soucis est que php a son propre encodage (configurable dans le php.ini) que le nom de ton fichier ou le noms de tes fichiers peut etre d'un encodage différent de son contenu, j'en passe et des meilleurs. Comme je disais sur IRC un des plus gros downside de l'univers linux/unix.
un des gros problème relatif aux charset c'est qu'il n'est à prioris pas possible de détecter un charset autrement qu'en testant son affichage (pacool quand on a un soucis) si tu as le contrôle sur l'encodage des noms de fichiers et des fichiers de ton système le mieux est de s'assurer qu'ils sont tous sur le même charset en les réencodant (à coup de iconv) et de s'assurer que la configuration des différents services relatifs au fichiers soit unifiée (système, sgbd, ftp, éditeurs, samba, etc)
Fait du php depuis que ca existe ou presque
