uc_first() et les accents
29 Déc 2017 / PHP, Programmation Web
En PHP, il est très simple de convertir des accents en majuscules et minuscules avec les fonctions mb_strtoupper() et mb_strtolower(), mais quand est-il de la fonction uc_first() ?
À l’heure actuelle, il n’existe pas de fonction permettant de convertir un accent en début de chaine (la valeur retournée restera en minuscules).
Je vous propose donc une petite fonction trouvée sur le site If not true then false, permettant la conversion des premiers caractères accentués :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<?php if (!function_exists('mb_ucfirst')) { function mb_ucfirst($str, $encoding = "UTF-8", $lower_str_end = false) { $first_letter = mb_strtoupper(mb_substr($str, 0, 1, $encoding), $encoding); $str_end = ""; if ($lower_str_end) { $str_end = mb_strtolower(mb_substr($str, 1, mb_strlen($str, $encoding), $encoding), $encoding); } else { $str_end = mb_substr($str, 1, mb_strlen($str, $encoding), $encoding); } $str = $first_letter . $str_end; return $str; } } ?> |
Le paramètre $lower_str_end permet de préciser si le reste de la chaine doit conserver ses majuscules (true) ou non (false).
À propos de l'auteur
David "McTaylis" Dubois
Internet me connait sous le nom de McTaylis, artiste cartoon furry, passionné de programmation web frontend Wordpress et PHP.- Suivez-moi sur :
- DeviantArt
- Tumblr