/includes/class/str.class.php
PHP | 110 lines | 59 code | 14 blank | 37 comment | 4 complexity | c6411bb7c659aee000008283621f57b7 MD5 | raw file
- <?php
- /**
- * Class Str
- *
- * Méthodes de traitement de chaines de caractčres
- */
- abstract class Str {
-
- /**
- * Formatage de la taille
- *
- * @param int $size -> Taille
- * @return string
- */
- public static function formatSize($size){
- // unités
- $u = array('octets', 'Ko', 'Mo', 'Go', 'To');
- $i = 0;
- $m = 0;
-
- // division par 1024
- while($size >= 1){
- $m = $size;
- $size /= 1024;
- $i++;
- }
- if(!$i){ $i=1; }
- $d = explode('.', $m);
-
- // s'il y a des décimales
- if($d[0] != $m){
- $m = number_format($m, 1, ',', ' ');
- }
- return $m.' '.$u[$i-1];
- }
-
-
- /**
- * Modifie les antislashes d'un lien local en slashes pour usage web
- *
- * @param string $path -> Le chemin ŕ modifier
- * @return string
- */
- public static function toSlash($path){
- $out = null;
-
- if( strstr($path, '\\') ){
- $newPath = explode('\\', $path);
- foreach($newPath as $part){
- $out .= $part.'/';
- }
- $out = substr($out, 0, -1);
- }
- else{
- $out = $path;
- }
-
- return $out;
- }
-
-
- /**
- * Remplace ou supprime les caractčres spéciaux
- *
- * @param string $str -> La chaine de caractčres
- */
- public static function replaceSpecialChars($str){
- // Listes
- $toRemove = array(
- "'", '"', '&', '<', '>', '+', '=', '*', '/', '˛', '~', '#', '{', '[', '(', '|', '`', '\\', '^', '@', ')', ']', '}', '¨', '$', 'Ł', '¤',
- '!', '%', '§', ':', ';', ',', '?', 'Ť', 'ť', '', '', '', '
', 'Ą', 'ż', '', '', '', '', '¸', 'ˇ', '', 'Ż', '?', '', 'Ś', '',
- '', 'ś', 'Š', 'Ž', '', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?',
- '?', '?', '?', '?', '?', '?', '?', '?', '?', '°', '?', '?', '?', '?', '?', 'ą', '×', '÷', '?', '', 'ź', '˝', 'ž', 'š', 'ł', 'ş', 'Ş',
- '?', '?', '?', '?', '?', '?', '?', 'Ź', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?', '?',
- '?', '?', '?'
- );
- $toDash = array(
- ' ', ' '
- );
-
- // Remplacement
- $str = trim($str);
- $str = str_replace($toRemove, '', $str);
- $str = str_replace($toDash, '-', $str);
- return $str;
- }
-
-
- /**
- * Remplace les caractčres accentués par leurs caractčres normal
- *
- * @param string $str -> La chaine de caractčres
- */
- public static function replaceAccentChars($str){
- $str = utf8_decode($str);
- $str = strtr($str, utf8_decode('ŔÁÂĂÄĹ??ŕáâăäĺ??ţĐŇÓÔŐÖŘňóôőöřČÉĘËčéęë?Çç˘ĚÍÎĎěíîďŮÚŰÜ?ůúűüľ?˙ýýÝĽŃń?????'), 'AAAAAAAAaaaaaaaBbDOOOOOOooooooEEEEeeeeEefCccIIIIiiiiUUUUUuuuuuuyyyYYYNnnRrpt');
- return utf8_encode($str);
- }
-
-
- /**
- * Remplace ou supprime les caractčres spéciaux et remplace les caractčres accentués
- *
- * @param string $str -> La chaine de caractčres
- */
- public static function replaceChars($str){
- return self::replaceSpecialChars( self::replaceAccentChars($str) );
- }
- }
- ?>