PHP уроки
ПРОСТО самая лучшая обучалка PHP!
  • Студия LPHPRU
  • Уроки PHP
  • Контакты
  • Помощь
Меню
  • PHP - с чего начать?
  • Уроки PHP
  • Функции PHP
  • Массивы
  • Denwer
  • MySQL
  • Информация
  • Dreamweaver уроки
  • JQuery уроки
  • Галерея
Календарь
Март (2021)
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
293031    
В продаже

  • Что нового?

    • Тест №2
    • Тест №1 для разработчиков
    • PHP 5.6 RC1
    • SQL. Как cкопировать данные одной колонки в другую, в той же таблице
    • GRUB изменить порядок загрузки OS в Linux
    • SSH - вход на сервер без ввода пароля
    • PhpMyAdmin - проблема с загрузкой большого файла на сервер
  • Комментарии

    • тут нечего не понятно
    • Может уже пора на WebStorm переходит...
    • Здравствуйте. 10 лет пользуюсь др...
    • Была такая проблема, решалась пе...
    • Возможно с течением времени этот...
  • TOP-5

    • Метод POST (2939962)
    • Привет, МИР! (907179)
    • Метод GET (661917)
    • Операторы (601792)
    • Firefox уже запущен, но не отвечает... (347165)

Регистр букв

Главная » Функции PHP » Регистр букв
PHP урок № 289

Регистр букв. Преобразование регистра.

регистр букв Доброго времени суток.
И так, немного философии и знаний, что же такое регистр букв?! Это понятие возможно незнакомо начинающему заниматься web мастерингом. Но всё гораздо проще, со школьной скамьи мы все с этим регистром букв сталкивались. Заглавная буква (прописная буква) в тексте (начало предложения), строчная буква , идущая после заглавной - это как раз и есть различный регистр букв. Проще можно было бы сказать размер букв, но это будет не совсем верно. Размер строчной буквы может составить 50 px, а заглавная буква может иметь меньший размер, но оставаться при этом заглавной. Регистр это разница в написании одного и того же символа, разное представление одних и тех же буквенных знаков.
Например:
G - заглавная буква (прописная буква)
g - строчная буква
В PHP есть четыре встроенных функции, для работы с регистром букв. Давайте перечислим сразу их все:
  • strtolower - uppercase and lowercase letters, case conversion
  • strtoupper - UPPERCASE AND LOWERCASE LETTERS, CASE CONVERSION
  • ucfirst - Uppercase and lowercase letters, case conversion
  • ucwords - Uppercase And Lowercase Letters, Case Conversion

Листинг № 1 - Преобразование регистра букв, с помощью встроенных функций PHP.

<?php
    
$r 
= "uppercase and lowercase letters, case conversion.";
echo 
strtolower($r)."<br>";
echo 
strtoupper($r)."<br>";
echo 
ucfirst($r)."<br>";
echo 
ucwords($r)."<br>";

//На мониторе мы увидим следующее:

/*
uppercase and lowercase letters, case conversion.
UPPERCASE AND LOWERCASE LETTERS, CASE CONVERSION.
Uppercase and lowercase letters, case conversion .
Uppercase And Lowercase Letters, Case Conversion.
*/

?>

Регистр букв. Функции для кодировки UTF-8.

Листинг № 2 - Функции преобразования регистра для кодировки Юникод(UTF-8).

<?php

$r 
= "Verification predlorzhenie.";

echo 
mb_strtoupper($r, 'UTF-8');                      // VERIFICATION PREDLORZHENIE.
echo mb_strtolower($r, 'UTF-8');                      // verification predlorzhenie.
echo mb_convert_case($r, MB_CASE_TITLE, "UTF-8");     // Verification Predlorzhenie.
echo mb_convert_case($r, MB_CASE_UPPER, "UTF-8");     // VERIFICATION PREDLORZHENIE.
?>

Листинг № 5 - Как перевести в верхний регистр только первую букву строки, в кодировке UTF-8? Я предлагаю ручками! А точнее с применением функции reop($str), код ниже.

<?php
    $a
= 'постой паровоз не стучите колёса...';
    function 
reop($string)
    {
        list(
$first_str) = explode(' ', trim($string));
        return 
mb_convert_case($first_str, MB_CASE_TITLE, "utf-8").' '. strstr($string, ' ');
    }
    echo 
reop($a); // Постой паровоз не стучите колёса...
?>

Регистр букв. Перевод русского текста.

Листинг № 3 - Меняем регистр букв в русском тексте.

<?php

$r 
= "Регистр букв.";

echo 
mb_strtoupper($r, 'windows-1251');                      // РЕГИСТР БУКВ.
echo mb_strtolower($r, 'Windows-1251');                      // регистр букв.
echo mb_convert_case($r, MB_CASE_TITLE, "Windows-1251");     // Регистр Букв.
echo mb_convert_case($r, MB_CASE_UPPER, "Windows-1251");     // РЕГИСТР БУКВ.

?>
  • Для того чтоб передать значение после обработки любой функцией, следует его сохранить в переменной.

Листинг № 4 - Передаём в переменную значения с изменённым регистром букв.

<?php

$r 
=  mb_strtoupper($r, 'windows-1251');                      // РЕГИСТР БУКВ.
$ra = mb_strtolower($r, 'Windows-1251');                      // регистр букв.
$rs = mb_convert_case($r, MB_CASE_TITLE, "Windows-1251");     // Регистр Букв.
$rv = mb_convert_case($r, MB_CASE_UPPER, "Windows-1251");     // РЕГИСТР БУКВ.

echo $r;      // РЕГИСТР БУКВ.
echo $ra;     // регистр букв.
echo $rs;     // Регистр Букв.
echo $rv;     // РЕГИСТР БУКВ.

?>

Урок закончен.

SETTER © LPHP.RU
Администрация сайта
10.03.2010 01:21:44

Обсудить на форуме.
Понравился урок? Не пропусти следующий!
Рекомендованные уроки этого раздела:
  • Пользовательские функции
  • Размер изображения
  • Сравнение двух PHP скриптов, или сравнение строк.
  • Регистр букв

Напишите свой комментарий
Ваше имя
Сообщение
Введите цифры с картинки:
 

Комментарии

danila 19.06.2010 17:18:39
Урок не полный, т.к. не учитывает использование таких кодировок, как utf-8. Для них используются друие функции.
SETTER 19.06.2010 21:02:31
Дополнил.
сергей 26.01.2011 10:26:55
привет
Vlad 13.12.2011 20:17:08
А как работать с русскими буквами в плане изменения первой буквы предложения как в ucfirst(), но с разными кодировками? Или такого варианта нет?
Дмитрий 01.02.2012 05:24:26
не распознает функцию mb_strtolower
SETTER 01.02.2012 11:32:32
И всё?
andsent 11.04.2012 21:18:06
Как создать форму с методом get, с выводом заглавных при вводе любых символов?
SETTER 12.04.2012 13:56:13
Для этого лучше использовать библиотеку JQuery.
владик 25.04.2012 12:42:14
падскажите пожалуйста чтойта за хрень хачу зарегацаа в игру какой пароль ниведу постояна пачти эта чтука выбивает Специальные символы запрещены. Как минимум 1 цифра, 1 буква нижнего регистра и 1 буква верхнего регистра. Длинна: >= 8 &
SETTER 25.04.2012 17:53:20
Просто валидация данных настроена таким образом, что в пароле необходимо иметь одну заглавную букву, как минимум одну прописную и цифру. Я думаю так. Например: Vlad200, а может это относится и к логину.
Mark 07.06.2012 15:16:18
mb_strtoupper Надо говорить что функция входит в дополнительную библиотеку РНР
Splintercel 09.09.2012 15:40:06
Тема для теста, просто так.
Вячеслав 08.01.2013 19:28:44
Спасибо большое! долго не мог найти как это делать в кодировках UTF-8 слава Богу есть такой замечательный сайт где разобраны все варианты буду теперь стараться по чаще заходить на Ваш сайт желаю Вам успехов в этом не легком деле!
Вячеслав 08.01.2013 19:34:27
А еще вопрос, а как сделать чтоб допустим только первая буква была заглавная а остальные слова нет, как в функции ucfirst()
Дмитрий 01.06.2013 16:18:32
Здравствуйте а можно чтобы текст был без регистра.При вводе что-бы не заморачиваться просто писать.
Андрей 21.08.2013 14:21:52
Спасибо! просто но со вкусом
Robertkt 12.03.2014 13:27:17
Авторитетная точка зрения, познавательно..
Robertkt 12.03.2014 14:28:08
Этот топик просто бесподобен :), мне нравится .
  • Яндекс.Метрика Здесь находится аттестат нашего WM идентификатора 185571665285
  • "LPHPRU" © 2009-2021