/php-web-practice

Primary LanguagePHPMIT LicenseMIT

Курс «‎Кроссплатформенная разработка программного обеспечения‎»

Запуск решений:

cd public
php -S localhost:8000

Лабораторная работа №1

«Элементы языка»

  1. Написать программу, которая содержит не менее 5-и переменных. Присвоить им значения разных типов и с помощью функции gettype() вывести тип каждой переменной на экран браузера.
  2. Присвоить значения двум переменным. С помощью операторов сравнения проверить, удовлетворяет ли первая переменная слудующим условиям:
    • равна второй;
    • меньше второй;
    • меньше или равна второй;
    • больше второй.

Лабораторная работа №2

«Управление потоком»

  1. C помощью инструкции if вывести на экран строку "Для молодежи", если переменная $age находится в диапазоне от 18 до 30. Если значение переменной вне этого диапазона, то вывести строку "Для всех возрастов".
  2. Сделать то же самое, но если переменная $age находится в диапазоне от 1 до 17, то вывести строку "Для детей".
  3. Написать цикл while, который будет выводить на экран все нечетные числа от 0 до 50.
  4. Сделать то же самое с помощью цикла for.

Лабораторная работа №3

«Массивы»

  1. Попробовать на практике следующие функции работы с массивами: count(), sizeof(), array_count_values(), array_merge(), array_shift(), array_pop(), array_push(), array_unshift(), array_slice(), in_array(), array_search(), sort(), rsort(), asort(), arsort(), ksort(), krsort().
  2. Создать массив, содержащий названия фильмов, организованных по жанрам. пусть это будет ассоциированный массив, в котором имена полей будут жанрами ("мелодрама", "боевик", "детектив" и пр.), а элементами – названия фильмов.
  3. Просмотреть созданный массив в цикле, выводя название жанра и связанные с ним фильмы на экран.

Лабораторная работа №4

«Функции»

Реализовать свою собственную функцию, согласно варианту. Вариант: array_slice().

Лабораторная работа №5

«Объектное программирование»

  1. Переработать класс Table пример 3 для вывода в формате таблицы с тегами table, th, tr, td
  2. Добавить закрытие тегов tr, th, td в примере 6
  3. Создать класс с именем baseClass, в свойствах которого сохраняются два числа. Написать к нему метод calculate(), который выводит эти числа на экран.
  4. Создать класс с именем addCalc, производный от класса baseClass. Переопределить его метод calculate() так, чтобы он выводил на экран сумму чисел.
  5. Создать класс с именем minusCalc, производный от класса baseClass. Переопределить его метод calculate() так, чтобы он выводил на экран разность первого и второго чисел.
  6. Создать класс содержащий static метод _GetVar(id, свойство), который создает объект класса и возвращает значение свойтва переданного во втором параметре. Это задание на понимание различий статических и динамических методов. При обращении к static методу нужно создать(new) новый экземпляр класса получить у него свойство, переданное в качестве параметра и вернуть его.
  7. Создать класс в котором будут производиться запись и чтение любых свойств этого класса. Использовать массив со свойствами и методы-перехватчики __get, __set, __unset, __isset. Отдокументровать 3 свойства с помощью @property phpDoc
  8. Определить волшебный метод Sum(a,b) - суммирования двух "волшебных" свойств переданных в параметре с помощью __call. Отдокументровать этот метод, определенный с помощью phpDoc

Лабораторная работа №6

«Формы»

Написать программу-калькулятор, которая позволит пользователю передать два числа и указать арифметическую операцию, выполняемую над ними.

Домашнее задание

«Сайт»

Разработать собственный сайт, согласно выбранной тематике, с использованием базы данных MYSQL. Сайт должен содержать минимум 4 разные страницы.