Работа со строками

Содержание

Слайд 2

Строка в PHP – это набор символов любой длины. Способы определения

Строка в PHP – это набор символов любой длины.
Способы определения

строк:
1. в одинарных кавычках;
Пример
echo 'это простая строка';
$a = 'это простая строка';
2. в двойных кавычках;
Пример
$juice = "apple";
echo "He drank some $juice juice";
Слайд 3

3. heredoc-синтаксис; Строка в формате heredoc начинается с последовательности Пример $str

3. heredoc-синтаксис;
Строка в формате heredoc начинается с последовательности <<< и идентификатора (учитывается

регистр символов). Затем записывается строка, а потом этот же идентификатор, закрывающий вставку. Строка с закрывающим идентификатором не содержит других символов, за исключением точки с запятой (;).
Пример
$str = <<Пример строки,
охватывающей несколько строк,
с использованием heredoc-синтаксиса.
ABC;
Слайд 4

4. nowdoc-синтаксис Внутри синтаксиса Nowdoc не осуществляется подстановок. Идентификатор заключается в

4. nowdoc-синтаксис
Внутри синтаксиса Nowdoc не осуществляется подстановок.
Идентификатор заключается в одинарные кавычки.
Пример


echo $a=<<<‘EOD’
Пример строки с использованием nowdoc-синтаксис
EOD;
?>
Если строка указывается в двойных кавычках, либо при помощи heredoc, переменные внутри нее обрабатываются.
Слайд 5

Интерполяция Интерполяция – это замена переменной в строке ее содержимым. Интерполяция является свойством двойных кавычек.

Интерполяция
Интерполяция – это замена переменной в строке ее содержимым.
Интерполяция является

свойством двойных кавычек.
Слайд 6

Пример $capital = 'Москва'; echo 'Столица России – ', $capital, '

Пример
$capital = 'Москва';
echo 'Столица России – ', $capital, '
';
?>
$capital =

"Москва";
echo " Столица России – $capital
";
?>
Слайд 7

Строковые операторы Конкатенация строк Оператор конкатенации '.' используется для объединения нескольких строк

Строковые операторы
Конкатенация строк
Оператор конкатенации '.' используется для объединения нескольких строк

Слайд 8

Пример $a = "Привет "; $b = $a."мир!"; echo $b; ?>

Пример
$a = "Привет ";
$b = $a."мир!";
echo $b;
?>

Слайд 9

Функции для работы со строками

Функции для работы со строками

Слайд 10

1. strlen() – получает длину строки Пример $x = "Привет"; echo

1. strlen() – получает длину строки
Пример
$x = "Привет";
echo strlen($x);
echo "
";
echo strlen("Hello");
?>

Слайд 11

trim() удаляет пробельные или другие символы в начале и конце строки.

trim() удаляет пробельные или другие символы в начале и конце строки.
ltrim()

удаляет пробельные или другие символы в начале строки
rtrim() удаляет пробельные или другие символы в конце строки
Слайд 12

Пример $abs=" Пробелы "; $abs1=trim($abs); echo "'$abs1'"; echo " "; $url

Пример
$abs=" Пробелы ";
$abs1=trim($abs);
echo "'$abs1'";
echo "
";
$url = '/saitsozdanie.ru/php/trim-funktsiya-podrobno.html/';
$url_parts = trim($url, '/');
print_r($url_parts);
?>

Слайд 13

strip_tags() удаляет из строки все HTML-теги, за исключением указанных во втором

strip_tags() удаляет из строки все HTML-теги, за исключением указанных во втором

параметре
Пример
echo $str = '

Строка

';
echo $str1 = strip_tags($str);
echo $str2 = strip_tags($str, '');
?>
Слайд 14

explode() разделяет строку на подстроки по указанному разделителю и добавляет их

explode() разделяет строку на подстроки по указанному разделителю и добавляет их

в массив.
Пример
$str = "Фамилия Имя Отчество Год рождения";
$Mass = explode(" ", $str);
foreach ($Mass as $key) {
echo $key . '
';
}
?>
Слайд 15

substr() возвращает подстроку указанной длины, начиная с заданной позиции. substr( , , [ ]);

substr() возвращает подстроку указанной длины, начиная с заданной позиции.
substr(<Строка>, <Начальная

позиция>, [<Длина>]);
Слайд 16

Пример echo $rest = substr("abcdef", 1); echo ' '; echo $rest

Пример
echo $rest = substr("abcdef", 1);
echo '
';
echo $rest = substr("abcdef",

0, 2);
echo '
';
echo $rest = substr("abcdef", -2, 2);
echo '
';
?>
Слайд 17

К отдельным символам можно обращаться с помощью фигурных скобок $string = 'abcdef'; echo $string{3};

К отдельным символам можно обращаться с помощью фигурных скобок
$string = 'abcdef';
echo

$string{3};
Слайд 18

8. wordwrap() позволяет разбить длинный текст на строки указанной длины wordwrap(

8. wordwrap() позволяет разбить длинный текст на строки указанной длины
wordwrap(<Строка>, <Количество символов>,

<Символ разрыва>);
Пример
$str = "Очень длинная строка перед выводом";
echo wordwrap($str, 7, "
");
Слайд 19

strtoupper() заменяет все символы строки соответствующими прописными буквами; strtolower() заменяет все символы строки соответствующими строчными буквами.

strtoupper() заменяет все символы строки соответствующими прописными буквами;
strtolower() заменяет все символы

строки соответствующими строчными буквами.
Слайд 20

Пример $fio="Hello"; $fio=strtoupper($fio); echo $fio." "; $fio=strtolower($fio); echo $fio; ?>

Пример
$fio="Hello";
$fio=strtoupper($fio);
echo $fio."
";
$fio=strtolower($fio);
echo $fio;
?>

Слайд 21

Функции для работы с символами 1. chr( ) возвращает символ по

Функции для работы с символами
1. chr(<Код символа>) возвращает символ по указанному коду;
2. ord(<Символ>)

возвращает код указанного символа.
Слайд 22

Поиск и замена в строке strpos() – ищет подстроку в строке.

Поиск и замена в строке
strpos() – ищет подстроку в строке.
Формат:
strpos(<Строка>,

<Подстрока>, [<Начальная позиция поиска>]);
Пример
$str=strpos("Hello PHP", "PHP");
if ($str!== false) echo "Строка РНР найдена в исходной строке в позиции $str";
else echo "Не найдено";
?>
Слайд 23

2. str_replace() производит замену всех вхождений подстроки в строку на другую

2. str_replace() производит замену всех вхождений подстроки в строку на другую подстроку

и возвращает результат в виде новой строки.
Формат:
str_replace(<Подстрока для замены>, <Новая подстрока>, <Строка>, [<Количество произведенных замен>]);
Слайд 24

Пример $str = 'Привет, Петя'; $count = 0; $str = str_replace('Петя',

Пример
$str = 'Привет, Петя';
$count = 0;
$str = str_replace('Петя', 'Вася', $str, $count);
echo

$str;
echo $count;
Слайд 25

Сравнение строк Операторы сравнения строк Не рекомендуется использовать операторы сравнения ==

Сравнение строк
Операторы сравнения строк
Не рекомендуется использовать операторы сравнения == и !=,

поскольку они требуют преобразования типов.
Оператор эквивалентности === позволяет корректно сравнивать строки
Слайд 26

Пример $x="123"; $y=123; $z="123"; if ($x === $z) echo " Строка

Пример
$x="123";
$y=123;
$z="123";
if ($x === $z) echo "

Строка x равна строке z

";
if ($x

=== $y) echo "

Строка x равна строке y

";
if ($x !== $y) echo "

Строка x НЕ равна строке z

";
Слайд 27

Функции сравнения строк strcmp( , ) сравнивает две строки. Возвращает значения:

Функции сравнения строк
strcmp(<Строка1>, <Строка2>) сравнивает две строки.
Возвращает значения:
0 – если

строки равны;
1 – если <Строка1> больше <Строки2>;
-1 – если <Строка1> меньше <Строки2>.
strcasecmp(<Строка1>, <Строка2>) сравнивает две строки без учета регистра
Слайд 28

Пример $str1 = "Stroka"; $str2 = "stroka"; echo strcmp($str1, $str2); echo strcasecmp($str1, $str2);

Пример
$str1 = "Stroka";
$str2 = "stroka";
echo strcmp($str1, $str2);
echo strcasecmp($str1, $str2);

Слайд 29

Кодирование строк urlencode() выполняет URL-кодирование строки Пример $str = "Текст на

Кодирование строк
urlencode() выполняет URL-кодирование строки
Пример
$str = "Текст на русском языке";
echo urlencode($str);
urldecode()

раскодирует строку, закодированную с помощью функции urlencode()
Пример
$str = "Текст на русском языке";
echo urlencode($str);
echo '
';
echo urldecode($str);
Слайд 30

Кодирование строк md5() – кодирует строку, используя алгоритм MD5. Используется для

Кодирование строк
md5() – кодирует строку, используя алгоритм MD5. Используется для кодирования

паролей
crypt() – кодирует строку, используя алгоритм DES
Пример
$pass = "Пароль";
echo $pass.'
';
echo md5($pass).'
';
echo crypt($pass);
?>
Слайд 31

Пример $pass = "password"; $pass = md5($pass); echo $pass; $pass2 =

Пример
$pass = "password";
$pass = md5($pass);
echo $pass;
$pass2 = "password";
if

($pass === md5($pass2)) echo "Пароль правильный";
Слайд 32

Преобразование кодировок 1. Функция convert_cyr_string() преобразует строку из одной кодировки в

Преобразование кодировок
1. Функция convert_cyr_string() преобразует строку из одной кодировки в другую.
convert_cyr_string(<Исходная строка>,

<Исходная кодировка>, <Нужная кодировка>);
Параметры <Исходная кодировка> и <Нужная кодировка> могут принимать значения:
a или d — кодировка x-cp866;
i — кодировка iso8859-5;
k — кодировка KOI8-R;
m — кодировка x-mac-cyrillic;
w — кодировка windows-1251 (cp1251).
Слайд 33

2. Функция iconv() также преобразовывает символы строки из одной кодировки в

2. Функция iconv() также преобразовывает символы строки из одной кодировки в другую.


iconv(<Исходная кодировка>, <Нужная кодировка>[<Флаг>], <Исходная строка>);
Слайд 34

Функции для обработки мультибайтных строк 1. mb_strlen (строка [, кодировка]) -

Функции для обработки мультибайтных строк
1. mb_strlen (строка [, кодировка]) - возвращает количество

символов в строке;
Многобайтный символ вычисляется как 1.
2. mb_convert_encoding() – конвертирует кодировку символов;
mb_convert_encoding(<Исходная строка>, <Нужная кодировка>, <Исходная кодировка>);
3. strlen(<Строка>) возвращает количество байт в строке;
Слайд 35

Функции для обработки мультибайтных строк mb_substr() возвращает подстроку указанной длины, начиная

Функции для обработки мультибайтных строк
mb_substr() возвращает подстроку указанной длины, начиная с

заданной позиции.
mb_substr(<Строка>, <Начальная позиция>[, <Длина>[,<Кодировка>]]);
Пример
$str = 'Строка';
$str1 = mb_substr($str, 0, 1);
echo $str1;
Слайд 36

5. iconv_substr() возвращает подстроку указанной длины, начиная с заданной позиции iconv_substr(

5. iconv_substr() возвращает подстроку указанной длины, начиная с заданной позиции
iconv_substr(<Строка>, <Начальная позиция>[,

<Длина>[,<Кодировка>]]);
Пример
$str = 'Строка';
$str1 = iconv_substr($str, 0, 1, 'UTF-8');
echo $str1;
Слайд 37

6. mb_strtoupper( [, ]) заменяет все символы строки соответствующими прописными буквами

6. mb_strtoupper(<Строка>[, <Кодировка>]) заменяет все символы строки соответствующими прописными буквами
Пример
$str = 'очень

длинная строка';
echo mb_strtoupper($str, 'UTF-8');
Слайд 38

7. mb_strtolower( [, ]) заменяет все символы строки соответствующими строчными буквами

7. mb_strtolower(<Строка>[, <Кодировка>]) заменяет все символы строки соответствующими строчными буквами
Пример
$str = 'ОЧЕНЬ

длинная строка';
echo mb_strtolower($str, 'UTF-8');
Слайд 39

8. mb_convert_case( , [, ]) преобразует регистр символов в зависимости от

8. mb_convert_case(<Строка>, <Режим>[, <Кодировка>]) преобразует регистр символов в зависимости от значения второго

параметра.
Параметр <Режим> может принимать значения:
MB_CASE_UPPER – заменяет все символы строки соответствующими прописными буквами;
MB_CASE_LOWER – заменяет все символы строки соответствующими строчными буквами;
MB_CASE_TITLE – делает первые символы всех слов прописными.
Слайд 40

Примеры $str = 'ОЧЕНЬ длинная строка'; echo mb_convert_case($str, MB_CASE_UPPER, 'UTF-8'); echo

Примеры
$str = 'ОЧЕНЬ длинная строка';
echo mb_convert_case($str, MB_CASE_UPPER, 'UTF-8'); echo '
';
echo mb_convert_case($str,

MB_CASE_LOWER, 'UTF-8'); echo '
';
echo mb_convert_case($str, MB_CASE_TITLE, 'UTF-8');
Слайд 41

Функции для поиска в строке mb_strpos() ищет подстроку в строке mb_strpos(

Функции для поиска в строке
mb_strpos() ищет подстроку в строке
mb_strpos(<Строка>, <Подстрока>[,

<Начальная позиция поиска>[,<Кодировка>]]);
2. mb_stripos() ищет подстроку в строке, не зависит от регистра символов
mb_stripos(<Строка>, <Подстрока>[, <Начальная позиция поиска>[,<Кодировка>]]);
Функции возвращают номер позиции, с которой начинается вхождение подстроки в строку.
Слайд 42

Пример echo mb_strpos('Привет', 'ри', 0, 'UTF-8'); mb_internal_encoding('UTF-8'); if (mb_strpos('Привет', 'При') !==

Пример
echo mb_strpos('Привет', 'ри', 0, 'UTF-8');
mb_internal_encoding('UTF-8');
if (mb_strpos('Привет', 'При') !== false) echo

'Найдено';
else echo 'Не найдено';
Слайд 43

mb_strrpos() ищет подстроку в строке mb_strrpos( , [, [, ]]); mb_strripos()

mb_strrpos() ищет подстроку в строке mb_strrpos(<Строка>, <Подстрока>[, <Начальная позиция поиска>[,<Кодировка>]]);
mb_strripos() ищет

подстроку в строке
mb_strripos(<Строка>, <Подстрока>[, <Начальная позиция поиска>[,<Кодировка>]]);
Возвращают позицию последнего вхождения подстроки в строку
mb_strripos() не зависит от регистра символов.
Слайд 44

iconv_strpos() ищет подстроку в строке. Возвращает номер позиции, с которой начинается

iconv_strpos() ищет подстроку в строке. Возвращает номер позиции, с которой начинается

вхождение подстроки в строку.
iconv_strpos(<Строка>, <Подстрока>[, <Начальная позиция поиска>[,<Кодировка>]]);
iconv_strrpos() ищет подстроку в строке. Возвращает позицию последнего вхождения подстроки в строку. iconv_strrpos(<Строка>, <Подстрока>[, Кодировка>]);
Функции зависят от регистра символов.