# Строковые функции PHP

## Работа с регистром символов

`strtolower` `strtoupper` `ucfirst` `lcfirst` `ucwords`

Дана строка `'php'`. Сделайте из нее строку `'PHP'`.

Дана строка `'PHP'`. Сделайте из нее строку `'php'`.

Дана строка `'london'`. Сделайте из нее строку `'London'`.

Дана строка `'London'`. Сделайте из нее строку `'london'`.

Дана строка `'london is the capital of great britain'`. Сделайте из нее строку `'London Is The Capital Of Great Britain'`.

Дана строка `'LONDON'`. Сделайте из нее строку `'London'`.

## Работа с strlen

`strlen`

Дана строка `'html css php'`. Найдите количество символов в этой строке.

Дана переменная `$password`, в которой хранится пароль пользователя. Если количество символов пароля больше `5`-ти и меньше `10`-ти, то выведите пользователю сообщение о том, что пароль подходит, иначе сообщение о том, что нужно придумать другой пароль.

## Работа с substr

`substr`

Дана строка `'html css php'`. Вырежьте из нее и выведите на экран слово `'html'`, слово `'css'` и слово `'php'`.

Дана строка. Вырежьте и выведите на экран последние `3` символа этой строки.

Дана строка. Проверьте, что она начинается на `'http://'`.

Дана строка. Проверьте, что она начинается на `'http://'` или на `'https://'`.

Дана строка. Проверьте, что она заканчивается на `'.png'`.

Дана строка. Проверьте, что она заканчивается на `'.png'` или на `'.jpg'`.

Дана строка. Если в этой строке более `5`-ти символов - вырежьте из нее первые `5` символов, добавьте троеточие в конец и выведите на экран. Если же в этой строке `5` и менее символов - просто выведите эту строку на экран.

## Работа с str_replace

`str_replace`

Дана строка `'31.12.2013'`. Замените все точки на дефисы.

Дана строка. Замените в ней все буквы `'a'` на цифру `1`, буквы `'b'` - на `2`, а буквы `'c'` - на `3`.

Дана строка с буквами и цифрами, например, `'1a2b3c4b5d6e7f8g9h0'`. Удалите из нее все цифры. То есть в нашем случае должна получится строка `'abcbdefgh'`.

## Работа с strtr

`strtr`

Дана строка `$str`. Замените в ней все `'a'` на цифру `1`, буквы `'b'` - на `2`, а буквы `'c'` - на `3`. Решите задачу двумя способами работы с функцией `strtr` (массив замен и две строки замен).

## Работа с substr_replace

`substr_replace`

Дана строка `$str`. Вырежьте из нее подстроку с `3`-го символа (отсчет с нуля), `5` штук и вместо нее вставьте `'!!!'`.

## Работа с strpos, strrpos

`strpos` `strrpos`

Дана строка `'abc abc abc'`. Определите позицию первой буквы `'b'`.

Дана строка `'abc abc abc'`. Определите позицию последней буквы `'b'`.

Дана строка `'abc abc abc'`. Определите позицию первой найденной буквы `'b'`, если начать поиск не с начала строки, а с позиции `3`.

Дана строка `'aaa aaa aaa aaa aaa'`. Определите позицию второго пробела.

Проверьте, что в строке есть две точки подряд.

Проверьте, что строка начинается на `'http://'`.

## Работа с explode, implode

`explode` `implode`

Дана строка `'html css php'`. Запишите каждое слово этой строки в отдельный элемент массива.

Дан массив с элементами `'html'`, `'css'`, `'php'`. С помощью `implode` создайте строку из этих элементов, разделенных запятыми.

В переменной `$date` лежит дата в формате год-месяц-день. Преобразуйте эту дату в формат день.месяц.год.

## Работа с str_split

`str_split`

Дана строка `'1234567890'`. Разбейте ее на массив с элементами `'12'`, `'34'`, `'56'`, `'78'`, `'90'`.

Дана строка `'1234567890'`. Разбейте ее на массив с элементами `'1', `'2'`, `'3'`, `'4'`, `'5'`, `'6'`, `'7'`, `'8'`, `'9'`, `'0'``.

Дана строка `'1234567890'`. Сделайте из нее строку `'12-34-56-78-90'` не используя цикл.

## Работа с trim, ltrim, rtrim

`trim` `ltrim` `rtrim`

Дана строка. Очистите ее от концевых пробелов.

Дана строка `'/php/'`. Сделайте из нее строку `'php'`, удалив концевые слеши.

Дана строка `'слова слова слова.'`. В конце этой строки может быть точка, а может и не быть. Сделайте так, чтобы в конце этой строки гарантировано стояла точка. То есть: если этой точки нет - ее надо добавить, а если есть - ничего не делать. Задачу решите через `rtrim` без всяких ифов.

## Работа с strrev

`strrev`

Дана строка `'12345'`. Сделайте из нее строку `'54321'`.

Проверьте, является ли слово палиндромом (одинаково читается во всех направлениях, примеры таких слов: madam, otto, kayak, nun, level).

## Работа с str_shuffle

`str_shuffle`

Дана строка. Перемешайте символы этой строки в случайном порядке.

Создайте строку из `6`-ти случайных маленьких латинских букв так, чтобы буквы не повторялись. Нужно сделать так, чтобы в нашей строке могла быть любая латинская буква, а не ограниченный набор.

## Работа с number_format

`number_format`

Дана строка `'12345678'`. Сделайте из нее строку `'12 `345` 678'`.

## Работа с str_repeat

`str_repeat`

С помощью одного цикла и функции `str_repeat` выведите на экран следующую пирамидку:

x
xx
xxx
xxxx
xxxxx
xxxxxx
xxxxxxx
xxxxxxxx
xxxxxxxxx

С помощью одного цикла и функции `str_repeat` выведите на экран следующую пирамидку:

1
22
333
4444
55555
666666
7777777
88888888
`999999999`

## Работа с strip_tags и htmlspecialchars

`htmlspecialchars` `strip_tags`

Дана строка `'html, <b>php</b>, js'`. Удалите теги из этой строки.

Дана строка `$str`. Удалите все теги из этой строки, кроме тегов <b> и <i>.

Дана строка `'html, <b>php</b>, js'`. Выведите ее на экран `'как есть'`: то есть браузер не должен преобразовать <b> в жирный.

## Работа с chr и ord

`chr` `ord`

Узнайте код символов `'a'`, `'b'`, `'c'`, пробела.

Изучите таблицу ASCII Определите границы, в которых располагаются буквы английского алфавита.

Выведите на экран символ с кодом `33`.

Запишите в переменную `$str` случайный символ - большую букву латинского алфавита. Для этого с помощью таблицы ASCII определите какие целые числа соответствуют большим буквам латинского алфавита.

Запишите в переменную `$str` случайную строку `$len` длиной, состоящую из маленьких букв латинского алфавита.

Дана буква английского алфавита. Узнайте, она маленькая или большая.

## Работа с strchr, strrchr

`strchr` `strrchr`

Дана строка `'ab-cd-ef'`. С помощью функции `strchr` выведите на экран строку `'-cd-ef'`.

Дана строка `'ab-cd-ef'`. С помощью функции `strrchr` выведите на экран строку `'-ef'`.

## Работа с strstr

`strstr`

Дана строка `'ab--cd--ef'`. С помощью функции `strstr` выведите на экран строку `'--cd--ef'`.

← →
↑