ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 29.04.2024
Просмотров: 6
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Методические указания для проведения практического занятия № 6
Тема: Работа со строками
Цель: Получение навыков работы со строками, использование функций для работы со строками в php.
Основные теоретические положения:
Работа со строками в PHP
Создание строки. В PHP, как и в других языках программирования, строки пишутся в кавычках. При этом PHP делает серьёзные различия между одинарными и двойными кавычками. Эти различия мы будем рассматривать при изучении данной темы.
$str = 'Строка с текстом';
Сложение строк. Для сложения строк не работает оператор "+". Вместо этого используется точка. Пример:
$new_str = $str.' для вывода на экран';
echo $new_str;
Переменную можно вставить в строку. Но для этого строка должна быть именно в двойных кавычках. Если она будет в одинарных, то в строку будет добавлено не значение, а имя переменной, то есть знак $ и название. А если строка в двойных кавычках, то будет вставлено значение переменной.
echo '
';
echo "Это $str";
Такая программа работает несколько медленнее, поэтому лучше использовать сложение строк.
Строковые функции. Программистам очень часто приходится иметь дело с различными функциями работы со строками в php. В разных справочниках представлены все функции, но я хотел бы ограничиться только основными из них.
Функция substr - получить часть строки
Когда из строки вам необходимо выделить отрывок заданной длины, начиная с заданной позиции, на помощь приходит функция substr.
$text="нас интересует кусок этого текста";
$cut=substr($text,4,10);
echo $cut;//интересует
$long=substr($text,15);
echo $long;//кусок этого текста
$first=substr($text,0,1); //первый символ строки
$last=substr($text,strlen($text)-1); //последний символ строки
?>
В этой функции через запятую передаются: текст, стартовая позиция и количество символов. Последний параметр не обязателен, и в случае его отсутствия результатом работы функции будет отрывок исходного текста от стартовой позиции до конца строки.
Функция strlen - узнать длину строки
Эта функция возвращает длину исходной строки в виде целого числа.
$text='нас интересует длина строки';
$len=strlen($text);
echo $len; //28
?>
Этой функцией вы сможете проверить длину введенных пользователем данных, а может быть что-то еще.
Функция trim - убрать лишние пробелы по краям строки
Функция trim удаляет по краям строки любые пробельные символы, в том числе и символ перевода строки. Так же существуют функции rtrim и ltrim, которые удаляют пробелы вконце иили вначале строки.
$text=' нас интересует длина строки ';
$text=trim($text);//удаляет пробелы с обеих сторон строки
$text=rtrim($text);//удаляет пробелы справа т.е. вконце строки
$text=ltrim($text);//удаляет пробелы слева, т.е. вначале строки
?>
Функция strpos - осуществляет поиск в строке
Функция strpos ищет подстроку в строке и в случае успеха возвращает позицию начала этой подстроки. После нахождения первой подстроки поиск прекращается.
$text='нас интересует где находится подстрока';
$sub='рес';
$pos1=strpos($text,$sub);//ищет с начала строки
$pos2=strpos($text,$sub,5);//если поиск нужно начать не с начала строки, используем третий параметр
?>
Порядок аргументов в функции таков: исходная строка, подстрока, стартовая позиция. Третий параметр не обязателен, но он есть.
Функция strip_tags - удаляет тэги HTML и PHP из строки
Функция strip_tags возвращает строку, очищенную от тегов html и php. Она вам пригодится, когда вы будете писать модуль комментариев на свой сайт, что бы не оставить злоумышленикам возможности взломать ваш сайт через форму.
$text='все теги html и php должны быть удалены';
echo strip_tags($text);
echo strip_tags($text,'');//не удалять теги em
?>
Первым аргументом функции идет исходный текст, а вторым - теги, которые не нужно удалять.
PHP функция strtolower - переводит строку в нижний регистр.
PHP функция strtoupper - переводит строку в верхний регистр.
Примеры решения задач.
Задача 1. Дана строка 'minsk'. Сделайте из нее строку 'MINSK'.
Решение: воспользуемся функцией strtoupper и сразу получим результат:
echo strtoupper('minsk');
?>
Задача 2. Дана строка 'минск'. Сделайте из нее строку 'МИНСК'.
Решение: функцией strtoupper мы не можем воспользоваться, так как она некорректно работает с русскими буквами. Воспользуемся функцией mb_strtoupper и сразу получим результат:
echo mb_strtoupper('минск');
?>
Задача 3. Дана строка 'MINSK'. Сделайте из нее строку 'Minsk'.
Решение: готовой функции для решения задачи в PHP не существует. Поэтому сначала воспользуемся функцией strtolower (в результате получится 'minsk'), а затем функцией ucfirst:
echo ucfirst(strtolower('minsk'));
?>
Задача 4. В переменной $date лежит дата в формате '31-12-2030'. Преобразуйте эту дату в формат '2030.12.31'.
Решение: для начала разобьем строку '31-12-2030' в массив с помощью функции explode:
//Разбиваем строку в массив по разделителю '-':
$arr = explode('-', '31-12-2030');
?>
В полученном массиве в $arr[0] будет лежать 31 (то есть день), в $arr[1] - месяц, а в $arr[2] - год. Сольем элементы этого массива в новую строку:
//Разбиваем строку в массив по разделителю '-':
$arr = explode('-', '31-12-2030');
//Получим дату в нужном формате:
echo $arr[2].'.'.$arr[1].'.'.$arr[0];
?>
Оборудование: Персональный компьютер, методические указания для выполнения ПЗ, литература
Порядок выполнения лабораторной работы:
1. Ответить на контрольные вопросы (письменно).
2. Выполнить задание. Необходимо решить по одному номеру из каждого вида задач. (всего пять задач).
Задание.
Задача 1. Работа с регистром символов
-
Дана строка 'php'. Сделайте из нее строку 'PHP'. -
Дана строка 'PHP'. Сделайте из нее строку 'php'. -
Дана строка 'london'. Сделайте из нее строку 'London'. -
Дана строка 'London'. Сделайте из нее строку 'london'. -
Дана строка 'london is the capital of great britain'. Сделайте из нее строку 'London Is The Capital Of Great Britain'. -
Дана строка 'LONDON'. Сделайте из нее строку 'London'.
Задача 2. Работа с strlen
-
Дана строка 'html css php'. Найдите количество символов в этой строке. -
Дана переменная $password, в которой хранится пароль пользователя. Если количество символов пароля больше 5-ти и меньше 10-ти, то выведите пользователю сообщение о том, что пароль подходит, иначе сообщение о том, что нужно придумать другой пароль.
Задача 3. Работа с substr
-
Дана строка 'html css php'. Вырежьте из нее и выведите на экран слово 'html', слово 'css' и слово 'php'. -
Дана строка. Вырежьте и выведите на экран последние 3 символа этой строки. -
Дана строка. Проверьте, что она начинается на 'http://'. Если это так, выведите 'да', если не так - 'нет'. -
Дана строка. Проверьте, что она начинается на 'http://' или на 'https://'. Если это так, выведите 'да', если не так - 'нет'. -
Дана строка. Проверьте, что она заканчивается на '.png'. Если это так, выведите 'да', если не так - 'нет'. -
Дана строка. Проверьте, что она заканчивается на '.png' или на '.jpg'. Если это так, выведите 'да', если не так - 'нет'. -
Дана строка. Если в этой строке более 5-ти символов - вырежите из нее первые 5 символов, добавьте троеточие в конец и выведите на экран. Если же в этой строке 5 и менее символов - просто выведите эту строку на экран.
Задача 4. Работа с str_replace
-
Дана строка '31.12.2013'. Замените все точки на дефисы. -
Дана строка $str. Замените в ней все буквы 'a' на цифру 1, буквы 'b' - на 2, а буквы 'c' -на 3. -
Дана строка с буквами и цифрами, например, '1a2b3c4b5d6e7f8g9h0'. Удалите из нее все цифры. То есть в нашем случае должна получится строка 'abcbdefgh'.
Задача 5. Работа с strpos, strrpos
-
Дана строка 'abc abc abc'. Определите позицию первой буквы 'b'. -
Дана строка 'abc abc abc'. Определите позицию последней буквы 'b'. -
Дана строка 'abc abc abc'. Определите позицию первой найденной буквы 'b', если начать поиск не с начала строки, а с позиции 3. -
Дана строка 'aaa aaa aaa aaa aaa'. Определите позицию второго пробела. -
Проверьте, что в строке есть две точки подряд. Если это так - выведите 'есть', если не так - 'нет'. -
Проверьте, что строка начинается на 'http://'. Если это так - выведите 'да', если не так - 'нет'.
3. Оформить отчет и переслать преподавателю.
Требования к оформлению результатов (отчета):
Отчет формируется в электронном виде в текстовом файле формата doc, docx, odt, и включает в себя :
-
Тему занятия (количество часов) -
Цель занятия -
Перечень оборудования -
Ответы на контрольные вопросы -
Описание выполнения задания, подробно по всем пунктам, а также иллюстрации (скриншоты экрана и другие необходимые материалы)
Контрольные вопросы:
-
Как создаются строки в РНР? -
Какой оператор используется для сложения строк? -
Какие функции вы знаете для работы со строками?
Используемая литература.
-
Исаченко О. В. Программное обеспечение компьютерных сетей: Учебное пособие / О.В. Исаченко. - М.: НИЦ ИНФРА-М, 2014. - 117 с.Режим доступа: http://znanium.com/.
-
Федорова Г.Н. Разработка, внедрение и адаптация программного обеспечения отраслевой направленности: учебное пособие / Г.Н. Федорова – М.: КУРС: ИНФРА-М, 2016. – 334 с. Режим доступа: http://znanium.com/.