php текст в верхний регистр
ucfirst
(PHP 4, PHP 5, PHP 7, PHP 8)
ucfirst — Преобразует первый символ строки в верхний регистр
Описание
Принадлежность того или иного символа к буквенным определяется с учётом текущей локали. Это означает, что, например, в используемой по умолчанию локали «C», символ ä не будет преобразован.
Список параметров
Возвращаемые значения
Возвращает результирующую строку.
Примеры
Пример #1 Пример использования ucfirst()
Смотрите также
User Contributed Notes 35 notes
Simple multi-bytes ucfirst():
A proper Turkish solution;
?>
it also check is mb support enabled or not
This is what I use for converting strings to sentence case:
print sentence_case ( ‘HMM. WOW! WHAT?’ );
// Outputs: «Hmm. Wow! What?»
?>
Here’s a function to capitalize segments of a name, and put the rest into lower case. You can pass the characters you want to use as delimiters.
Implementation of multi-bytes ucfirst for «multiword»-strings (module mbstring is required):
Improved method of capitalizing first characters of sentences.
The first two manipulations (double spaces & all caps) are optional so can be removed without harm.
plemieux’ function did not work for me without passing the encoding to every single mb function (despite ini_set(‘default_charset’, ‘utf-8’) at the top of the script). This is the example that works in my application (PHP 4.3):
For some reason this worked for me.
Mac OS 10.5.1
PHP 5.2.6
Here is the fixed function for Turkish alphabet..
for anyone wanting to ucfirst each word in a sentence this works for me:
For lithuanian text with utf-8 encoding I use two functions (thanks [mattalexxpub at gmail dot com] and Svetoslav Marinov)
My version, converst first letter of the first word in the string to uppercase
public function mb_ucfirst($str) <
$aParts = explode(» «,$str);
$firstWord = mb_convert_case($aParts[0],MB_CASE_TITLE,»UTF-8″);
unset($aParts[0]);
I made a small change. Now it takes care of points in numbers
if you want to ucfirst for utf8 try this one:
( «UTF-8» );
mb_regex_encoding ( «UTF-8» );
function RemoveShouting($string)
<
$lower_exceptions = array(
«to» => «1», «a» => «1», «the» => «1», «of» => «1»
);
$higher_exceptions = array(
«I» => «1», «II» => «1», «III» => «1», «IV» => «1»,
«V» => «1», «VI» => «1», «VII» => «1», «VIII» => «1»,
«XI» => «1», «X» => «1»
);
Using this function for Turkish language is won’t work because of multi-byte characters. But you can use some tricks:
here is how mb_ucfirst should be implemented in userland
@adefoor, Ken and Zee
This is a simple code to get all the ‘bad words’, stored in a database, out of the text. You could use str_ireplace but since that’s installed on PHP5 only, this works as well. It strtolowers the text first then places capitals with ucfirst() where it thinks a capital should be placed, at a new sentence. The previous sentence is ended by ‘. ‘ then.
Ah, the last code were spoiled, here is the fixed one:
?>
So, this function changes also other letters into uppercase, ucfirst() does only change: a-z to: A-Z.
Note: the return for this function changed in versions 4.3 when a string is passed of length 0. In 4.3 a string of length 0 is returned.
Results for 4.3:
string(0) «» string(4) «Owen»
In the event you sort of need multiple delimiters to apply the same action to, you can preg_replace this «second delimiter» enveloping it with your actual delimiter.
A for instance, would be if you wanted to use something like Lee’s FormatName function in an input box designed for their full name as this script was only designed to check the last name as if it were the entire string. The problem is that you still want support for double-barreled names and you still want to be able to support the possibility that if the second part of the double-barreled name starts with «mc», that it will still be formatted correctly.
This example does a preg_replace that surrounds the separator with your actual delimiter. This is just a really quick alternative to writing some bigger fancier blah-blah function. If there’s a shorter, simpler way to do it, feel free to inform me. (Emphasis on shorter and simpler because that was the whole point of this.) 😀
Here’s the example. I’ve removed Lee’s comments as not to confuse them with my own.
Учебник по PHP 4
Функции преобразования регистраstrtolower()Функция производит преобразование символов строки в нижний регистр. strtoupper()Производит преобразование строки в верхний регистр. Отмечают, что функция не очень хорошо иногда работает с русскими буквами. ucfirst()Производит преобразование первого символа строки в верхний регистр. Функция возвращает строку, с заглавным первым символом. При конвертации символов кириллицы могут быть недоразумения. ucwords()Производит преобразование первого символа каждого слова строки в верхний регистр. Возвращает строку, у которой первый символ каждого слова в строке заглавный. Под словом понимается участок строки, которому предшествует пробельный символ: пробел, переход на новую строку, прогонка страницы, возврат каретки, горизонтальная и вертикальная табуляция.
Если Вам нужна частная профессиональная консультация от авторов многих книг Кузнецова М.В. и Симдянова И.В., добро пожаловать в наш Консультационный Центр SoftTime. Привести строку в нужный регистр PHPКазалось бы, что может быть проще перевести строку в верхний или нижний регистр, используя PHP. Но даже в такой простой операции бывают свои подводные камни. Рассмотрим не совсем правильный метод перевода строки в нужный регистр. echo strtolower($str); //Все буквы маленькие hello hello Также, хочу отметить эти две команды, которые могут пригодиться в редких ситуациях: echo ucfirst(«hello hello»); //первая буква заглавная Hello Но минус перечисленных функций в том, что они не работают с кириллицей Преобразование в нужный регистр согласно русских символов. $str = «у мэри»; Поэтому рекомендую использовать чаще mb_convert_case, она более универсальна. Бонусом приведу пару PHP функций, которые всегда могут пригодиться. Выводит строку, которая начинается с поискового запроса и до конца echo strstr («Поиск строки начинается», «стро»); // выводит «строки начинается» Возвращает номер символа, с которого начинается подстрока. Работает в windows-1251 echo strpos («Кто там?», «там»); // выводит «4» Удаляют пробелы в строке ltrim, chop, trim echo ltrim(» Пробел «); // «Пробел » в начале строки Как сделать первую букву заглавной php кирилицаДостаточно редко, но всё-же возникает такая необходимость, как сделать первую букву заглавной php кирилица. Это когда первая буква слова становится большой. Применить это можно, например, для унификации написания имени пользователя, или, например, когда нужно автоматически составить текст в предложение. Как сделать первую букву заглавной php латиницаТут всё достаточно просто: в PHP есть 2 функции: ucfirst() и ucwords(). Первая делает только первую букву в строке заглавной, вторая делает первую букву каждого слова в строке заглавной. В результате получим две строки: Видим разницу. С английскими текстами (или любыми другими), написанными латиницей проблем не будет. Как сделать первую букву заглавной php кирилица Windows-1251 (CP-1251)С кирилицей (русскими буквами) которые записаны в кодировки Windows-1251 тоже не будет больших проблем: В результате получим две строки: Как сделать первую букву заглавной php кирилица UTF-8Но как только дело доходит до UTF-8 начинаются проблемы, потому, что кирилица в UTF-8 занимает 2 байта, и поэтому ничего не получится. Для этого будем использовать «костыль» от Multibyte String Functions. Если этот плагин установлен на PHP, то можно просто использовать 2 аналогичные функции: mb_ucfirst и mb_convert_case. А если их нет, то нужно дополнить код своими альтернативами: Результатом этому коду станут такие строчки: первые буквы Как видите, первые 2 строчки не сработали, из-за того, что обычные ucfirst и ucwords не умеют работать с кирилицей в UTF-8. С помощью этих функций можно построить успешный бизнес на продвижении сайтов. Ну не только на этих функциях, но поверьте, в продвижении сайтов всегда нужно всё максимально автоматизировать. Делаем первую букву в строке заглавной на PHP/jQuery/CSSЗачастую в спешке при добавлении материалов на сайт или, например, создании новой темы на форуме пользователь может начать писать предложение (название) с маленькой (строчной) буквы. Это в какой-то степени является ошибкой. Я покажу несколько вариантов решения этой задачи: PHP и CSS подойдут больше для уже опубликованных материалов, когда как jQuery сможет исправить положение еще до публикации. Первая буква строки в верхнем регистре на PHPНа PHP существует функция под названием «ucfirst», которая как раз преобразует первый символ строки в верхний регистр, но минус ее в том, что она не совсем корректно работает с кириллицей. Для этого мы напишем свою небольшую функцию. Реализация будет выглядеть следующим образом: В таком варианте мы получим предложение, которое начинается с большой буквы, что, собственно говоря, нам и необходимо. Первая буква строки в верхнем регистре на CSSЭтот метод визуально (то есть в исходном коде сайта предложения будут выглядеть как есть) также преобразует первый символ в верхний регистр. С помощью псевдоэлемента «first-letter» и свойства «text-transform» мы задали оформление для каждой первой буквы параграфа. Первая буква строки в верхнем регистре на jQueryКак я уже говорил ранее, этот способ преобразования лучше всего подойдет для материалов, которые еще только будут публиковаться. Для примера мы возьмем текстовое поле (оно будет выступать у нас в качестве поля для ввода заголовка) и напишем для него небольшой скрипт, который при вводе предложения с маленькой буквы делает его с большой: Скрипт срабатывает как при написании текста, так и простой его вставке. Не забывайте, что для работы скриптов на вашем сайте необходимо наличие подключенной библиотеки jQuery.
|