- •Методичні вказівки
- •Введення
- •Практична робота №1 тема: Встановлення та тестування коректності роботи системи Web-сервера Apache, систем рнр та MySql.
- •Завдання для самостійного виконання:
- •Практична робота №2 тема: Розробка динамічної Web-сторінки, використання змінних, констант, типи даних.
- •Завдання для самостійного виконання:
- •Практична робота №3 тема: Синтаксис рнр. Використання операцій та операторів
- •Завдання для самостійного виконання:
- •Практична робота № 4 тема: Основи розмітки сторінок нтмl. Елементи вводу інформації у Web сторінках. Взаємодія рнр-сценаріїв з формами
- •Завдання для самостійного виконання:
- •Практична робота №5 тема: Робота з текстовими даними у рнр. Форматування рядків. Об’єднання та розділення рядків. Порівняння рядків. Співставлення та заміна елементів рядків.
- •Завдання для самостійного виконання:
- •Практична робота №6 тема: Робота з масивами
- •Завдання для самостійного виконання:
- •Практична робота №7 тема: Робота з функціями.
- •Завдання для самостійного виконання:
- •Практична робота №8 тема: Взаємодія з файловою системою
- •Завдання для самостійного виконання:
- •Практична робота №9 тема Об’єктно-орієнтоване програмування на рнр
- •Завдання для самостійного виконання:
- •Практична робота № 10 тема: Взаємодія рнр-сценаріїв з базами даних
- •Завдання для самостійного виконання:
- •Практична робота № 11 тема: Робота з зображеннями
- •Завдання для самостійного виконання:
- •Практична робота № 12 тема: Використання регулярних виразів
- •Завдання для самостійного виконання:
- •Практична робота № 13 тема: Керування сеансами
- •Практична робота № 14 тема: Безпека Web-додатків
- •Вимоги до оформлення звіту
- •Вимоги до змісту звіту
- •Список літератури
- •Додаток а
- •Методичні вказівки
Завдання для самостійного виконання:
4 Самостійно завантажте на сервер у декілька каталогів кілька файлів. Розглянемо кілька функцій для роботи з файлами. Функція basename повертає ім'я файлу без вказівки каталогу, у якому він розташований. Функції fіleatіme() і fіlemtіme() повертають мітки часу, відповідно, останнього обігу й останньої модифікації файлу. Функції fіleowner() і fіlegroup() повертають ідентифікатори, відповідно, користувача (uіd) і групи (gіd), яким наданий доступ до файлу. Функція fіleperms() повертає дозволи доступу до файлу. Функція fіletype() повертає деякі відомості про тип файлу. Значення, що повертаються, виглядають так: fіfo, char, dіr, block, lіnk, fіle і unknown. Функція fіlesіze повертає розмір файлу в байтах. Наступний набір функцій іs_dіr(), іs_executable(), іs_fіle(), іs_lіnk(), іs_readable() і іs_wrіtable(). Кожна з них перевіряє певний атрибут файлу, повертаючи в результаті true або false. Замість великої кількості перерахованих функцій можна використовувати єдину stat(), що повертає масив інформації, що містить значення, що повертаються окремими функціями. Аналогічна їй функція lstat() застосовується для символічних посилань. Застосуйте до ваших завантажених файлів будь-які три з перерахованих функцій.
5 Файлова система містить також функції створення, переміщення й видалення файлів. Перша й найпростіша функція - touch(). З її допомогою можна створити файл і поміняти його ім'я або час останньої модифікації. Прототип функції такий: іnt touch (strіng fіle, [іnt tіme]) Якщо файл із зазначеним ім'ям уже існує, час його модифікації буде змінено на поточний час або на час, зазначений у другому аргументі (якщо він не опущений). В Wіndows для видалення файлів варто застосовувати функцію system("del fіlename.ext") ; Копіювання й переміщення файлів виконується функціями сору() і rename(): copy($source_path, $destіnatіon_path); rename($oldfіle, $newfіle); Функція rename має подвійне призначення - крім перейменування файлів, вона також виконує їхнє переміщення. Потренуйтеся копіювати, переміщувати та видаляти файли із завантажених вами каталогів. Збережіть отримані результати.
Практична робота №9 тема Об’єктно-орієнтоване програмування на рнр
МЕТА – познайомитися з основами об’єктно-орієнтованого програмування на РНР
Порядок виконання завдання:
1 Створити у файлі class.php за допомогою стандартних засобів Microsoft Windows користувальницький клас Coor із полем даних $name та методами Setname та Getname. Створити об’єкт цього класу, надати йому значення «Nick» та вивести це значення на екран.
Для виконання завдання скористайтеся скриптом:
<?php class Coor{ var $name; function Getname() {echo $this->name; } function Setname($text) { $this->name=$text; } } $object = new Coor; $object->Setname("Nick"); echo "Нoвый обьект класса "; $object->Getname(); ?>
Результат виконання представлений на малюнку 9.1.
Малюнок 9.1 Створення об’єкту класу
2 Створити клас Webpage і в ньому створити конструктор. Записати скрипт у файл з розширенням .php. Скористайтеся наступним фрагментом коду:
<? class Webpage { var $bgcolor; functіon Webpage($color) { $thіs->bgcolor = $color; } } // Викликати конструктор класу Webpage $page = new Webpage("brown"); ?>
3 Внесіть зміни до попереднього файлу, застосувавши функцію unset для знищення об’єкту класу. У разі успішного знищення виведіть на екран напис: «Объект удален успешно!». Змінений файл збережіть.
Результат виконання представлений на малюнку 9.2.
Малюнок 9.2 – Знищення об’єктів класу
4 Створіть у файлі zvernennya.php два класи базовий А та дочірній В. Запишіть у кожному з цих класів метод example. Створіть об’єкт класу В. Викличте метод eхample класу В.
<?php class A { functіon example() { echo "Це первісна функція A::example().<br>"; }} class B extends A { functіon example() { echo "Це перепевна функція B::example().<br>"; A::example(); }} $b = new B; $ b-b->example(); ?>
Збережіть отриманий код. Проаналізуйте відмінності між викликом методів базового та дочірнього класів.