1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
| class Php {
public static function asort(array &$tableau) {
$tableauSansAccent = self::tableauSansAccent($tableau);
asort($tableauSansAccent);
$tableauTrié = self::tableauTrié($tableau, $tableauSansAccent);
$tableau = $tableauTrié;
}
public static function sort(array &$tableau) {
$tableauSansAccent = self::tableauSansAccent($tableau);
sort($tableauSansAccent);
$tableauTrié = self::tableauTrié($tableau, $tableauSansAccent);
$tableau = $tableauTrié;
}
public static function strtolower($texte) {
return mb_strtolower($texte, 'utf-8');
}
public static function strtoupper($texte) {
return mb_strtoupper($texte, 'utf-8');
}
public static function ucfirst($texte) {
$texte[0] = self::strtoupper($texte[0]);
return $texte;
}
private static function tableauSansAccent(array $tableau) {
foreach ($tableau as $cléOuIndex => $texte) {
$tableauSansAccent[$cléOuIndex] = Texte::sansAccent($texte);
}
return $tableauSansAccent;
}
private static function tableauTrié(array $tableau, array $tableauSansAccent) {
foreach ($tableauSansAccent as $cléOuIndex => $texteSansAccent) {
foreach ($tableau as $texte) {
if ($texteSansAccent == Texte::sansAccent($texte)) {
$tableauTrié[$cléOuIndex] = $texte;
}
}
}
return $tableauTrié;
}
}
class Texte {
public static function sansAccent($texte) {
return utf8_encode(strtr(utf8_decode($texteSimple), utf8_decode('àáâãäåçèéêëìíîïñòóôõöøùúûüÿÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖØÙÚÛÜ'), utf8_decode('aaaaaaceeeeiiiinoooooouuuuyAAAAAACEEEEIIIINOOOOOOUUUU')));
}
} |