Строки в PHP

Как уже упоминалось ранее, данные могут иметь различный тип. Один из типов - числа, мы с вами уже немного изучили. Давайте теперь перейдем к строкам.

Строки создаются с помощью кавычек:

<?php $str = 'abc'; echo $str; // выведет 'abc' ?>

Кавычки могут быть не только одинарными, но и двойными:

<?php $str = "abc"; echo $str; // выведет 'abc' ?>

Сложение строк

Для сложения (конкатенации) строк используется оператор точка:

<?php $str = 'abc' . 'def'; // складываем две строки echo $str; // выведет 'abcdef' ?>

Строки также могут хранится в переменных:

<?php $str1 = 'abc'; $str2 = 'def'; echo $str1 . $str2; // выведет 'abcdef' ?>

Можно также складывать переменные и строки:

<?php $str1 = 'abc'; $str2 = 'def'; echo $str1 . '!!!' . $str2; // выведет 'abc!!!def' ?>

Создайте переменную $str и присвойте ей строку 'hello'. Выведите значение этой переменной на экран.

Создайте переменную с текстом 'abc' и переменную с текстом 'def'. С помощью этих переменных и операции сложения строк выведите на экран строку 'abcdef'.

Пробелы при сложении строк

Пусть две строки хранятся в переменных, а при их сложении мы хотим вставить между ними пробел. Это делается так:

<?php $str1 = 'abc'; $str2 = 'def'; echo $str1 . ' ' . $str2; // выведет 'abc def' ?>

Пусть переменная только одна:

<?php $str = 'abc'; echo $str . ' ' . 'def'; // выведет 'abc def' ?>

В этом случае нет смысла выделять пробел, как отдельную строку - вставим его как часть второго слагаемого:

<?php $str = 'abc'; echo $str . ' def'; // выведет 'abc def' ?>

Создайте переменную с текстом 'hello' и переменную с текстом 'world'. С помощью этих переменных и операции сложения строк выведите на экран строку 'hello world'.

Длина строки

Количество символов строки можно найти с помощью функции strlen:

<?php echo strlen('abcde'); // выведет 5 ?>

Строка может хранится и в переменной:

<?php $str = 'abcde'; echo strlen($str); // выведет 5 ?>

Пробел также является символом:

<?php echo strlen('ab de'); // выведет 5 ?>

Запишите в переменную какую-нибудь строку. Выведите на экран длину вашей строки.

Проблема с кириллицей

Функция strlen, как и многие другие строковые функции PHP, некорректно работает с кириллицей - она каждую кириллическую букву считает два раза:

<?php echo strlen('абвгд'); // выведет 10, а не 5 ?>

Поэтому для строк, которые содержат или потенциально могут содержать проблемные символы, используйте функцию mb_strlen - она будет работать корректно:

<?php echo mb_strlen('абвгд'); // выведет 5 ?>

Запишите в переменную какую-нибудь кириллическую строку. Выведите на экран длину вашей строки.