1. PHP / Говнокод #7136

    +150

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function rustrtolower($s)
    	{
    		$from = array("А","Б","В","Г","Д","Е","Ё","Ж","З","И","Й","К","Л","М","Н","О","П","Р","С","Т","У","Ф","Х","Ц","Ч","Ш","Щ","Ъ","Ы","Ь","Э","Ю","Я","A","B","C","D","E","F","G","H","I","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","J");
    		$to =   array("а","б","в","г","д","е","ё","ж","з","и","й","к","л","м","н","о","п","р","с","т","у","ф","х","ц","ч","ш","щ","ъ","ы","ь","э","ю","я","a","b","c","d","e","f","g","h","i","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","j");
    		return str_replace($from, $to, $s);
    	}

    Запостил: Мартин, 02 Июля 2011

    Комментарии (6) RSS

    • Ну опять таки, на хостинге может быть не установлены либы нужные для этого дела, такое бывает.
      Ответить
      • На хостинге и PHP может быть не установлен:)
        Ответить
      • Можно и без mb_string и явно заданных говно-массивов, пока речь о строке содержащей кроме английского только один другой язык.

        http://www.php.net/manual/en/iconv.installation.php
        По умолчанию скомпилировано с ним. Не могу себе представить хостинг без iconv.
        Плача, переводим наш юникод в CP-1251.

        http://www.php.net/manual/en/function.setlocale.php
        Стандартная, ее не может не быть в ПХП 4+. Включаем русскую локаль.

        http://www.php.net/manual/en/function.strtolower.php
        Стандартная, ее не может не быть в ПХП 4+.
        "Note that 'alphabetic' is determined by the current locale."

        Т.е. с включенной русской локалью оно приведет к нижнему регистру и русские буквы тоже.
        Возвращаем нашу строку в юникод iconv-ом.

        Хотя с точки зрения скорости говно-массив лучше. Врят ли набор букв в русском языке собирается часто изменяться.
        Ответить
    • показать все, что скрытоPHP здесь каждый день топят и мину суют. Уже >2141 одинакового говна собралось.
      Ответить
    • и аналогичная rustrtoupper? )
      Ответить
    • Радует, что J идёт после Z.
      Ответить

    Добавить комментарий