Всех друзей поздравляем с Новым годом! Всего вам самого наилучшего! Всех благ, здоровья а материальное приложится!
СКРИПТЫ alt htmlcssphpjsblog

Использование strtolower, не работает для кириллицы , примеры

Поддержи проект!!! smile

Сегодня разберем функцию strtolower, которая преобразует строку в нижний регистр. Т.е. все буквы делает строчными в php. Попробуем разобраться в ошибках связанных с функцией strtolower, примеры strtolower, напишем свою функцию для кириллицы преобразующие большие буквы в маленькие, но не только о strtolower, но и коснемся mb-strtolower.

Естественно нужно начать с определения даннйо функции:

Все о функции strtolower

  1. Что такое strtolower
  2. Использование strtolower для латиницы:
  3. Использование strtolower для кириллицы:
  4. Strtolower не работает для кириллицы
  5. Собственная функция Strtolower для кириллицы!
  6. Собственная функция Strtolower для кириллицы и латиницы!
  7. Онлайн функция Strtolower для текста!
  8. Скачать можно здесь

  1. Что такое strtolower

    С самого начала -дадим определение : "что такое strtolower":
    strtolower - это функция возвращает строку, в которой все буквы приведены в нижний регистр

    Синтаксис функции strtolower

    strtolower ( string $string ) : string

    Разбор синтаксиса функции strtolower

    strtolower - название функции.

    string - тип переменной, которую может обработать функция strtolower - строка

    $string - переменная.

    : string - тип возвращаемого значения строка

    Использование strtolower:

    Самое удобное, поместить в переменную текст, который пропускается через функцию и получается соответствующая строка.

    $переменная = "ЭТО ТЕСТОВЫЙ ТЕКСТ, КОТОРЫЙ БУДЕТ ИЛЛЮСТРИРОВАТЬ ПОВЕДЕНИЕ СТРОЛЛОВЕР ";

    Ну и далее оборачиваем переменную функцией strtolower:

    $переменная = strtolower($переменная);

    И выводим результат с помощью echo

    echo $переменная ;

  2. Пример использования strtolower для латиницы:

    Для того, чтобы показать пример использования функции strtolower - нам понадобится текст на английском:

    THIS IS A TEST TEXT THAT WILL ILLUSTRATE THE BEHAVIOR OF THE STRTOLOWER

    Далее применим к данной строке strtolower с использованием функции echo :

    echo ("THIS IS A TEST TEXT THAT WILL ILLUSTRATE THE BEHAVIOR OF THE STRTOLOWER");

    Результат применения strtolower к английскому тексту, который написан "ПРОПИСНЫМИ"

    this is a test text that will illustrate the behavior of the strtolower

    Как видим - наши "ПРОПИСНЫЕ" буквы на английском стали "строчными".

    После этого можем переходить к кириллице!

  3. Использование strtolower для кириллицы:

    Для того, чтобы протестировать работу функции strtolower для кириллицы нам потребуется строка на русском:
    ЭТО ТЕСТОВЫЙ ТЕКСТ, КОТОРЫЙ БУДЕТ ИЛЛЮСТРИРОВАТЬ ПОВЕДЕНИЕ СТРОЛЛОВЕР

    Опять поступаем со строкой, как в выше идущем пункте:

    echo ("ЭТО ТЕСТОВЫЙ ТЕКСТ, КОТОРЫЙ БУДЕТ ИЛЛЮСТРИРОВАТЬ ПОВЕДЕНИЕ СТРОЛЛОВЕР ");

    Расположим данный вывод прямо здесь и получим:

    ЭТО ТЕСТОВЫЙ ТЕКСТ, КОТОРЫЙ БУДЕТ ИЛЛЮСТРИРОВАТЬ ПОВЕДЕНИЕ СТРОЛЛОВЕР

    Мы видим, что ничего у нас не произошло…

    Почему не сработала функция strtolower

    Не буду подробно останавливаться на этом пункте, просто скажу, что существует разница между кодировками и наборами алфавитов:

    Насколько я понимаю, что проблема в данном случае с кодировкой utf-8 для кириллицы! Дело в том, что кириллица в данной кодировке имеет не один символ а два... и strtolower просто не понимает, что от него хотят...

    Чтобы показать в живую, чем отличается кириллица от латиницы:

    напишем var_dump ('МИР')

    string(6) "МИР"

    и var_dump('VAR')

    string(3) "VAR"

    Далее наверное и не нужно объяснять, что произошло... var_dump нам выдал о слове МИР на кириллице 6 знаков...

  4. Strtolower не работает для кириллицы

    Если функция Strtolower не сработала для кириллицы - что делать!?

    Вместо strtolower, можно использовать mb_strtolower - что означает mb

    Но если например мы будем использовать данную функцию в таком виде:

    $str = mb_strtolower($str);

    То получим такой результат:

    , Чтобы mb_strtolower заработала с кириллицей UTF-8 ей нужно придать кодировку, таким образом:
    $str = mb_strtolower($str, "UTF-8");

    Смотрим, что у нас в итоге получилось:

    это тестовый текст, который будет иллюстрировать поведение стролловер

  5. Собственная функция Strtolower для кириллицы!

    Сталкивались с Strtolower для кириллицы!? Или может вы использовали mb-strtolower для кириллицы!? Эти функции работали и как впечатление!?

    Когда в последний раз меня вывела из себя функция mb-strtolower – оказывается – эту хрень еще и подключать надо! Какая важная фифа, что она может даже быть и отключенная! Не то, что я не могу разобраться, как её включить – но просто это так достало, что просто нет тех слов цензурных слов, которые могли бы выразить все то, что я им хочу сказать!

    Сделаем собственную функцию Strtolower для кириллицы!

    Нам нужна такая функция Strtolower для кириллицы, чтобы она работала всегда и везде и чтобы больше никогда я не встречался с этой проблемой – мы просто напишем собственную функцию Strtolower для кириллицы!

    Погнали!

    Нам понадобится массив, который представляет из себя ключ – Большая кириллическая буква(верхний регистр = «ПРОПИСНЫЕ»), значение маленькая кириллическая буква(нижний регистр = «строчные»)

    $ru_array = array('А' => 'а','Б' => 'б','В' => 'в','Г' => 'г','Д' => 'д', 'Е' => 'е','Ё' => 'ё','Й' => 'й','Ж' => 'ж','З' => 'з','И' => 'и','К' => 'к','Л' => 'л','М' => 'м','Н' => 'н','О' => 'о','П' => 'п','Р' => 'р','С' => 'с','Т' => 'т','У' => 'у','Ф' => 'ф','Х' => 'х','Ц' => 'ц','Ч' => 'ч','Ш' => 'ш','Щ' => 'щ','Ъ' => 'ъ','Ы' => 'ы','Ь' => 'ь','Э' => 'э','Ю' => 'ю','Я' => 'я');

    1). Создаем функцию, в которую помещаем наш массив с большими и маленькими буквами

    Еще нам понадобится функция strtr – которая преобразует найденные ключи в значения!

    function examplestrtolower($str) { $ru_array = array('А' => 'а','Б' => 'б','В' => 'в','Г' => 'г','Д' => 'д', 'Е' => 'е','Ё' => 'ё','Й' => 'й','Ж' => 'ж','З' => 'з','И' => 'и','К' => 'к','Л' => 'л','М' => 'м','Н' => 'н','О' => 'о','П' => 'п','Р' => 'р','С' => 'с','Т' => 'т','У' => 'у','Ф' => 'ф','Х' => 'х','Ц' => 'ц','Ч' => 'ч','Ш' => 'ш','Щ' => 'щ','Ъ' => 'ъ','Ы' => 'ы','Ь' => 'ь','Э' => 'э','Ю' => 'ю','Я' => 'я'); return strtr($str,$ru_array ); }

    2). Поместим наш тестовый текст с прописными буквами в переменную

    И обработаем дальше уже нашей функцией Strtolower для кириллицы

    $text ="ЭТО НАШ ТЕСТОВЫЙ ТЕКСТ, КОТОРЫЙ НАПИСАН ПРОПИСНЫМИ, А ЧТО ТАКОЕ ПРОПИСНЫЕ – ЭТО БОЛЬШИЕ КИРИЛЛИЧЕСКИЕ БУКВЫ В ВЕРХНЕМ РЕГИСТРЕ. ТОЛЬКО ПРИДУРОК МОЖЕТ ТАК ПИСАТЬ, СО ВКЛЮЧЕННЫМ КАПСОМ, И ДАЛЕЕ ПРОВЕРИМ РАБОТУ СОБСТВЕННУЮ ФУНКЦИЮ СТРОЛЛОВЕР ДЛЯ КИРИЛЛИЦЫ!";
    echo examplestrtolower($text);

    Результат работы собственной функции для кириллицы!

    3). Ну и нам осталось вывести результат преобразования нашего текста прописными в строчные с помощью простой функции стролловер для кириллицы в utf-8
    это наш тестовый текст, который написан прописными, а что такое прописные – это большие кириллические буквы в верхнем регистре. только придурок может так писать, со включенным капсом, и далее проверим работу собственную функцию стролловер для кириллицы!
  6. Собственная функция Strtolower для кириллицы и латиницы!

    Пойдем дальше! Чем каждый раз вспоминать,какая функция работает там, работает сям! Сделаем функцию для кириллицы и латиницы, дарю:

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

    Теперь давайте испытаем, сразу на двух текстах... что мы сделаем!?

    Выведем наши текста таикм образом:

    echo my_strtolower($new_text_strollower . ' <br> ' . $new_text_strollower_en);

    Результат работы собственной функции strollower

    это тестовый текст, который будет иллюстрировать поведение стролловер
    this is a test text that will illustrate the behavior of the strtolower
  7. Онлайн функция Strtolower для текста!

    Теперь на нашем сайте вы можете привести весь текст, который так или иначе написан с включением больших(прописных) букв, превратить в текст написанный строчными, т.е. маленькими!

    Как работает онлайн Strtolower

    В поле ввода пишем или вставляем текст ПРОПИСНЫМИ! И нажимаем отправить! И вы получите результат! Пока только Русский и английский языки!



Последняя дата редактирования : 09.02.2021 01:28
Название скрипта :Буквы в нижнем регистре php
Скрипт № 77.1Ссылка на скачивание : Все скрипты на одной странице
//dwweb.ru/comments_1_5/include/img/hand_no_foto.png
no
no
Еще никто не прокомментировал! COMMENTS+   BBcode
аватар
🞨
Загрузить свой аватар
(max ширина, высота = 200px)

Подписаться + =
Теги:
strtolowerstrtolower phpmb strtolowermb strtolower phpstrtolower не работаетstrtolower utfstrtolower кириллицаstrtolower utfstrtolower php кириллицаphp strtolower utfstrtolower php не работаетphp strtolower русские символыmb strtolower utfmb strtolower не работает с русскими буквамиstrtolower не работает с русскими буквами utfphp mb strtolower utfфункция strtolower не работает с кириллицей

Счетчик в график :

Построение гравиков
Основа для графика : счетчик посещаемости.
Последние комментарии :
Марат :
29/04/2021 01:46
Реанимирована страница о "шаблонах в DREAMWEAVER"!Эта программа была основной для редактирования моих сайтов на…
подробнее.
Марат :
23/04/2021 04:35
Страница обновлена - добавлен скрипт - всё в одном. Скачивание картинку по…
подробнее.
Марат :
13/04/2021 08:12
Во-первых пожалуйста!1). $new_array - был прописан оттого, что контент на сайте пишется на живых примерах. И часто…
подробнее.
Валерий :
13/04/2021 05:47
перебрал весь материал- во первых спасибоискал другое но понравился Ваш материалerror - или неточность 1. везде…
подробнее.
Марат :
08/04/2021 07:12
Сам афигеваю!
подробнее.