Слайд 2
![Содержание](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-1.jpg)
Слайд 3
![Основные понятия](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-2.jpg)
Слайд 4
PHP
PHP (изначально Personal Home Page Tools – “Инструменты для создания персональных веб-страниц”) –
скриптовый язык общего назначения, интенсивно применяемый для разработки веб-приложений. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков, применяющихся для создания динамических веб-сайтов.
![PHP PHP (изначально Personal Home Page Tools – “Инструменты для создания персональных веб-страниц”)](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-3.jpg)
Слайд 5
Как записывается PHP
PHP скрипт начинается с . Все, что
между , это PHP код.
Файл, в котором записан PHP код нужно сохранять с расширением .php.
![Как записывается PHP PHP скрипт начинается с . Все, что между , это](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-4.jpg)
Слайд 6
Вывод текста на экран. Оператор echo.
Наиболее употребляемым оператором для вывода текста на экран
является оператор echo.
![Вывод текста на экран. Оператор echo. Наиболее употребляемым оператором для вывода текста на](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-5.jpg)
Слайд 7
Синтаксис HEREDOC
Для отображения большого количества текста используют т.н. синтаксис heredoc. Он начинается с
символов <<<, после которых может быть записан произвольный идентификатор. После располагаемого текста стоит указать тот самый идентификатор, что и в начале кода.
![Синтаксис HEREDOC Для отображения большого количества текста используют т.н. синтаксис heredoc. Он начинается с символов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-6.jpg)
Слайд 8
Комментарии
В PHP существует 3 типа комментариев.
Вложенные комментарии недопустимы.
![Комментарии В PHP существует 3 типа комментариев. Вложенные комментарии недопустимы.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-7.jpg)
Слайд 9
![Переменные в PHP](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-8.jpg)
Слайд 10
Переменные в PHP
Синтаксис переменной состоит из знака доллара – $ и "свободного" идентификатора
которому присваивается какое-нибудь значение.
Имя (идентификатор) переменной чувствительно к регистру и не может начинаться с цифр и пробела.
![Переменные в PHP Синтаксис переменной состоит из знака доллара – $ и "свободного"](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-9.jpg)
Слайд 11
Создание переменной
Переменная создается тогда, когда ей присваивают какое-нибудь значение.
Для присвоения значения переменной используют
оператор присвоения =.
![Создание переменной Переменная создается тогда, когда ей присваивают какое-нибудь значение. Для присвоения значения](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-10.jpg)
Слайд 12
Вывод переменной
Переменную можно вывести с помощью оператора echo.
![Вывод переменной Переменную можно вывести с помощью оператора echo.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-11.jpg)
Слайд 13
Интерполяция переменных
Также существует одна тонкость при использовании интерполяции переменных. Например:
![Интерполяция переменных Также существует одна тонкость при использовании интерполяции переменных. Например:](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-12.jpg)
Слайд 14
Переменные, содержащие имена других переменных
![Переменные, содержащие имена других переменных](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-13.jpg)
Слайд 15
![Константы в PHP](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-14.jpg)
Слайд 16
Типы данных в PHP
Boolean
Integer
String
Float
Object
Array
Resource
NULL
![Типы данных в PHP Boolean Integer String Float Object Array Resource NULL](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-15.jpg)
Слайд 17
![Операторы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-16.jpg)
Слайд 18
Математические операторы и функции
+ сумма двух чисел
- разность чисел
/ частное
от деления двух чисел
% остаток от деления
![Математические операторы и функции + сумма двух чисел - разность чисел / частное](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-17.jpg)
Слайд 19
Операторы присвоения
Также в PHP есть комбинированные операторы, которые делают код более компактным. Вот
их перечень:
+=, -=, /=, .=, %=, &=, |=, ^=, <=, >=
![Операторы присвоения Также в PHP есть комбинированные операторы, которые делают код более компактным.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-18.jpg)
Слайд 20
![Инкремент и декремент](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-19.jpg)
Слайд 21
Оператор исполнения
В PHP существует такой оператор, как оператор исполнения, он нужен для того
чтобы выполнять команды ОС и использовать результат этого выполнения.
Любая строка, которая заключена в обратные апострофы — ` считаются как команда ОС. Например (как результат вы получите список директорий диска D):
![Оператор исполнения В PHP существует такой оператор, как оператор исполнения, он нужен для](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-20.jpg)
Слайд 22
Строковые операторы
PHP имеет два строковых оператора.
Первый – оператор конкатенации ., который объединяет две
строки в одну.
Второй - конкатенирующий оператор присвоения .=, добавляет к строке нужное значение.
![Строковые операторы PHP имеет два строковых оператора. Первый – оператор конкатенации ., который](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-21.jpg)
Слайд 23
![Условные операторы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-22.jpg)
Слайд 24
![Условный оператор IF](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-23.jpg)
Слайд 25
![Операторы сравнения](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-24.jpg)
Слайд 26
![Логические операторы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-25.jpg)
Слайд 27
![Оператор ELSE](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-26.jpg)
Слайд 28
Оператор ELSEIF
elseif
else if
![Оператор ELSEIF elseif else if](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-27.jpg)
Слайд 29
![Оператор SWITCH](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-28.jpg)
Слайд 30
![Циклы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-29.jpg)
Слайд 31
![Цикл FOR](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-30.jpg)
Слайд 32
![Цикл WHILE](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-31.jpg)
Слайд 33
![Цикл DO…WHILE](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-32.jpg)
Слайд 34
![Цикл FOREACH](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-33.jpg)
Слайд 35
![Строки](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-34.jpg)
Слайд 36
Функции для обработки строк
С помощью этих фукнций можно, например, обрезать строку, дописывать строку,
заменить часть строки и много другое.
Пример:
![Функции для обработки строк С помощью этих фукнций можно, например, обрезать строку, дописывать](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-35.jpg)
Слайд 37
![Массивы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-36.jpg)
Слайд 38
Создание массивов
Массивы создаются при помощи оператора присвоения, также как и переменная.
Имена массивов начинаются
со знака $, после которого следует произвольный идентификатор, далее идут квадратные скобки: $arr[0] = "php";
![Создание массивов Массивы создаются при помощи оператора присвоения, также как и переменная. Имена](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-37.jpg)
Слайд 39
![Для создания массива](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-38.jpg)
Слайд 40
![Для создания массива](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-39.jpg)
Слайд 41
Удаление элементов массива
Если нам нужно удалить один из элементов массива, то для этого
мы должны использовать функцию unset
![Удаление элементов массива Если нам нужно удалить один из элементов массива, то для](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-40.jpg)
Слайд 42
Перебор элементов массива
Для вывода всех элементов массива на экран можно использовать функцию print_r,
которая выведет все элементы массива вместе с их индексами.
![Перебор элементов массива Для вывода всех элементов массива на экран можно использовать функцию](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-41.jpg)
Слайд 43
Функции для работы с массивами
Для работы с массивами в PHP предусмотрено очень много
функций, полный список которых находится на странице официальной документации:
https://www.php.net/manual/ru/ref.array.php
![Функции для работы с массивами Для работы с массивами в PHP предусмотрено очень](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-42.jpg)
Слайд 44
![Сортировка массивов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-43.jpg)
Слайд 45
![Сортировка массивов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-44.jpg)
Слайд 46
Преобразование строк в массивы и наоборот
implode - формирует строку из массива.
explode - формирует
массив из строки.
![Преобразование строк в массивы и наоборот implode - формирует строку из массива. explode](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-45.jpg)
Слайд 47
![Многомерные массивы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-46.jpg)
Слайд 48
Использование циклов в многомерных массивах
![Использование циклов в многомерных массивах](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-47.jpg)
Слайд 49
![Функции](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-48.jpg)
Слайд 50
![Функции в PHP](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-49.jpg)
Слайд 51
![PHP + HTML](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-50.jpg)
Слайд 52
Получаем данные от элементов формы с помощью PHP
![Получаем данные от элементов формы с помощью PHP](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-51.jpg)
Слайд 53
Получаем данные от элементов формы с помощью PHP
![Получаем данные от элементов формы с помощью PHP](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-52.jpg)
Слайд 54
Получаем данные от элементов формы с помощью PHP
Создайте и откройте (через редактор) обработчик
app/code.php - сначала, это просто пустая страница. Далее откройте тег PHP - Нужно проверить, была ли отправлена форма, для этого будем использовать глобальную переменную $_SERVER и проверять REQUEST_METHOD
![Получаем данные от элементов формы с помощью PHP Создайте и откройте (через редактор)](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-53.jpg)
Слайд 55
Получаем данные от элементов формы с помощью PHP
Дальше, если форма отправлена, мы можем
получить данные от поля "Имя", для этого, какой-нибудь переменной присваиваем полученное значение от этого поля, например:
![Получаем данные от элементов формы с помощью PHP Дальше, если форма отправлена, мы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-54.jpg)
Слайд 56
Получаем данные от элементов формы с помощью PHP
То же самое делаем и для
остальных полей:
![Получаем данные от элементов формы с помощью PHP То же самое делаем и для остальных полей:](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-55.jpg)
Слайд 57
Получаем данные от элементов формы с помощью PHP
Данные мы получили, теперь мы можем
их вывести, для этого в страницу обработчика дописываем код:
![Получаем данные от элементов формы с помощью PHP Данные мы получили, теперь мы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-56.jpg)
Слайд 58
Проверка данных формы с помощью PHP
Давайте используем ту часть кода, где мы получили
данные из формы:
![Проверка данных формы с помощью PHP Давайте используем ту часть кода, где мы](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-57.jpg)
Слайд 59
Проверка данных формы с помощью PHP
Теперь нам нужно проверить переданные нам данные. Чтобы
не писать один и тот же код, давайте создадим несколько функций для проверки.
Сначала создадим функцию для очистки данных от HTML и PHP тегов:
![Проверка данных формы с помощью PHP Теперь нам нужно проверить переданные нам данные.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-58.jpg)
Слайд 60
Проверка данных формы с помощью PHP
Дальше, создадим функцию для проверки длины строки:
![Проверка данных формы с помощью PHP Дальше, создадим функцию для проверки длины строки:](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-59.jpg)
Слайд 61
Проверка данных формы с помощью PHP
Нам нужно "прогнать" переменные через эти функции:
![Проверка данных формы с помощью PHP Нам нужно "прогнать" переменные через эти функции:](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-60.jpg)
Слайд 62
Проверка данных формы с помощью PHP
Если значения не пустые (проверили с помощью функции
empty), то можно продолжать проверку дальше:
![Проверка данных формы с помощью PHP Если значения не пустые (проверили с помощью](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-61.jpg)
Слайд 63
Проверка данных формы с помощью PHP
Давайте добавим сообщение об успешности операции, если данные
прошли все проверки.
![Проверка данных формы с помощью PHP Давайте добавим сообщение об успешности операции, если](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-62.jpg)
Слайд 64
Проверка данных формы с помощью PHP
В конце, нам нужно добавить сообщения для уведомления
о том, что данные не прошли проверку.
![Проверка данных формы с помощью PHP В конце, нам нужно добавить сообщения для](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-63.jpg)
Слайд 65
Практическое задание
Задача 1.
Переменная $lang может принимать два значения: «ru» и «en». Если она
имеет значение «ru», то в переменную $arr запишем массив дней недели на русском языке, а если имеет значение «en» – то на английском.
Варианты:
1 – Решить через switch-case.
2 – Решить через if, else, elseif.
![Практическое задание Задача 1. Переменная $lang может принимать два значения: «ru» и «en».](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-64.jpg)
Слайд 66
Практическое задание
Задача 2.
Заполните массив 10 случайными числами от 1 до 50. Выведите его.
Получившийся массив разделить на 2 новых – массив четных и нечетных.
![Практическое задание Задача 2. Заполните массив 10 случайными числами от 1 до 50.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-65.jpg)
Слайд 67
Практическое задание
Задача 3.
Считайте введенную с клавиатуры строку. Если в ней более 5 символов
– возьмите 5 первых, дополните многоточием и выведите. Если 5 и менее символов – просто выведите строку.
![Практическое задание Задача 3. Считайте введенную с клавиатуры строку. Если в ней более](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-66.jpg)
Слайд 68
Практическое задание
Задача 4. Вариант 1.
Считайте из формы имя, фамилию и возраст пользователя, запретите
ввод тегов и обрезайте концевые пробелы. При правильном вводе после отправки скройте форму.
![Практическое задание Задача 4. Вариант 1. Считайте из формы имя, фамилию и возраст](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-67.jpg)
Слайд 69
Практическое задание
Задача 4. Вариант 2.
Считайте из формы имя, фамилию и возраст пользователя, запретите
ввод тегов и обрезайте концевые пробелы. При правильном вводе после отправки значения должны остаться в полях формы.
![Практическое задание Задача 4. Вариант 2. Считайте из формы имя, фамилию и возраст](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/349493/slide-68.jpg)