Mammouth du PHP |
985 Messages
02 oct. 2009, 22:48
Bon en fait j'ai trouvé, cela n'a rien à voir avec l'encodage mais avec le
setlocale().
A la différence près que pour l'
UTF-8 faut aussi utiliser l'option
\u
Avec l'encodage ISO:
<?php
header('Content-Type: text/html; charset=ISO-8859-1');
setlocale(LC_ALL,'fr_FR.ISO8859-1');
$chaine = 'abcé';
if (preg_match ('#^[[:alnum:]_-]{4,32}$#', $chaine)) {
echo 'Preg_match: oui <br/>';
}
echo $chaine;
?>
Avec l'encodage UTF-8:
<?php
header('Content-Type: text/html; charset=UTF-8');
setlocale(LC_ALL,'fr_FR');
$chaine = 'abcé';
if (preg_match ('#^[[:alnum:]_-]{4,32}$#u', $chaine)) {
echo 'Preg_match: oui <br/>';
}
echo $chaine;
?>
Face à la roche, le ruisseau l'emporte toujours, non pas par la force mais par la persévérance.