Тема: мова програмування РНР, середовище програмування.
Мета:
Обладнання: комп’ютери зі встановленими ОС з текстовим редактором та середовищем програмування РНР.
Структура уроку
Хід уроку
1. Організаційний момент
Привітання з учнями. Перевірка присутності і готовності учнів до уроку. Перевірка виконання домашнього завдання. Оголошення теми й мети уроку.
2. Актуалізація опорних знань
Дати відповіді і порівняти з очікуваними:
Що таке алоритм?
Алгори́тм — це запис набору вказівок, що описують порядок дій виконавця з метою досягнути результат розв'язання задачі за скінченну кількість дій.
Назвіть власивості алгоритмів.
Дискретність, визначеність, виконуваність, скінченність, результативність, масовість, ефективність.
Назвіть основні алгоритмічні структури.
Лінійна, з повторенням (циклічна), з розгалуженням.
Хто такий виконавець алгоритму?
Це жива істота (людина або тварина) або автоматичний пристрій (робот, електронна обчислювальна машина тощо), спроможна діяти відповідно з алгоритмом.
Що таке система вказівок (команд) виконавця?
Система вказівок виконавця — це сукупність вказівок, які розуміє і здатний виконати виконавець.
Що таке комп'ютерна програма?
Комп'ютерна програма — алгоритм (запис послідовності вказівок) для комп'ютера.
3. Вивчення нового матеріалу
PHP (англійською Hypertext Preprocessor — гіпертекстовий препроцесор, попередня назва: Personal Home Page Tools — засоби для особистої домашньої сторінки) — мова програмування, створена для породження HTML-сторінок зі сторони веб-сервера.
PHP є однією з найпоширеніших мов, що використовуються у сфері веб-розробок разом із Java, .NET, Perl, Python і Ruby.
Веб-сервер інтерпретує код PHP у код HTML, який передає клієнту. Також код РНР можна вбудовувати безпосередньо в код html. На відміну від мови JavaScript, користувач не бачить PHP-коду, бо браузер клієнта отримує готовий html-код.
Давайте проаналізуємо, що відбувається, коли користувач звертається до сервера. Він пише в рядку адреси браузера адресу сторінки чи переходить за якимось посиланням, тобто створює запит. Що робить сервер?
У найпростішому випадку викликають HTML сторінку — текстовий файл. Браузер, посилає запит на сервер, отримує код сторінки, додатково завантажує необхідні файли, прописані в коді сторінки і необхідні для відображення її дизайну та її коректної роботи, та показує результат у своєму вікні. Такі сторінки мають статичний характер.
Тепер розглянемо випадок, коли викликають сторінку, написану мовою PHP. У цьому випадку відбувається зовсім інше. При зверненні до сервера Web машина обробляє дані, отримані з файлу *.php, після чого сервер відправляє результат опрацювання цих даних у браузер користувача. Такі сторінки називають динамічними.
З допомогою мови PHP можна зробити будь-що, що роблять CGI програми (англійською Common Gateway Interface — загальний інтерфейс шлюзу — стандарт інтерфейсу, який використовують для організації взаємодії програми веб-сервера із зовнішньою програмою). Наприклад, опрацювання даних форм, породження вмісту динамічних сторінок, відправлення та отримання куків. Але PHP має значно ширші можливості.
Основні області застосування PHP коду
Написання скриптів для виконання на стороні сервера. PHP традиційно і найширше використовують саме таким чином. Потрібно запустити веб-сервер з встановленою на ньому мовою PHP. Через веб-сервер можна пропускати сторінку з кодом PHP, та проглядати результат її роботи через веб-браузер. Все це можна робити навіть на домашньому комп'ютері. Хоча існує можливість опробувати код PHP, використовуючи online сервіс. Наприклад, Coding Ground.
Створення скриптів для виконання в командному рядку без будь-якого сервера чи браузера. Цей тип використання ідеальний для скриптів, що регулярно запускають через cron (на *nix чи Linux) чи його аналог Планувальник Задач (на Windows). Ці скрипти можна використовувати для простого опрацювання текстів.
Створення програм з графічним інтерфейсом. Хоча мова РНР не найкраща для такого використання.
PHP можна використовувати при більшості операційних систем: Linux, багато варіантів Unix (включаючи HP-UX, Solaris та OpenBSD), Microsoft Windows, Mac OS X, RISC OS та, можливо, інших.
PHP має також підтримку для більшості сучасних веб-серверів: Apache, IIS та багатьох інших. Окрім цього, підтримка є на будь-якому веб-сервері, що використовує бінарні коди FastCGI — клієнт-серверного протоколу взаємодії веб-сервера та програм.
PHP не обмежено створенням лише коду HTML: можливе подання зображень, PDF-файлів та навіть Flash роликів, що які породжують «на льоту». Можна легко виводити будь-який текст XHTML та будь-який інший XML-файл. PHP може породжувати такі файли та зберігати їх у файловій системі, а не лише виводити текст, формувати кеш на стороні сервера для динамічного вмісту.
Одна з найсильніших та найістотніших особливостей PHP — це підтримка широкого кола баз даних:
Adabas D, dBase, Direct MS-SQL, Empress, FilePro (read-only), FrontBase, Hyperwave, IBM DB2, Informix, Ingres, InterBase, mSQL, MySQL, ODBC, Oracle (OCI7 и OCI8), Ovrimos, PostgreSQL, Solid, Sybase, Unix dbm.
Абетка мови РНР
Змінні та типи данних в PHP
Назва довільної змінної в PHP починається зі знаку $, наприклад $variable. При такому способі формування назв змінних їх легко відрізнити від інших складових коду. Можливе посилання на змінну за її назвою, що зберігається в іншій змінній:
$name = "value"; $value = 5; echo $$name; // результат виведення: 5Типи змінних
$answer = 45;
А пізніше можна надати цій самій змінній значення іншого типу:
$answer = "Thanks for all the first...";
Арифметичні оператори РНР
Приклад | Назва (тлумачення) |
---|---|
-$a | зміна знака |
$a + $b | cума |
$a - $b | різниця |
$a * $b | добуток |
$a / $b | частка |
$a % $b | цілий лишок від ділення |
$a ** $b | степінь (з PHP 5.6.0) |
Логічні оператори РНР призначені виключно для роботи з логічними виразами і повертають значення false або true.
Приклад | Назва (тлумачення) | Умова істинності (true) результату |
---|---|---|
$a and $b $a && $b | логічне «і» | обидва аргументи справджуються |
$a or $b $a || $b | логічне «або» | хоча б один з аргументів справджується |
$a xor $b | виключне «або» | лише один з аргументів справджується |
! $a | заперечення | хибний аргумент |
Оператори надання значень РНР
Запис | Приклад | Значення, надане змінній $a |
---|---|---|
= | $a='text'; | 'text' |
$a = ($b = 4) + 5; | 9 | |
. | $b="Hello "; $a=$b."World!"; | 'Hello World!' |
.= | $a = "Hello "; $a.="World!"; | 'Hello World!' |
+= | $a = 5; $a += 3; | 8 |
Оператори порівняння РНР порівнювати два значення між собою і незалежно від типів своїх аргументів завжди повертають одне з двох значень: true або false.
Приклад | Назва (тлумачення) | Умова істиннності результату |
---|---|---|
$a == $b | збігається | збігаються значення |
$a === $b | збігається повністю | збігаються значення змінних одного типу |
$a != $b | відмінне | значення не збігаються |
$a <> $b | відмінне | значення не збігаються |
$a !== $b | відмінне повністю | не збігаються значення або типи |
$a < $b | менше | значення $a (строго) менше від значення $b |
$a > $b | більше | значення $a (строго) більше від значення $b |
$a <= $b | не перевищує | значення $a не перевищує значення $b |
$a >= $b | не менше | значення $a не менше від значення $b |
Пріоритети виконання операторів РНР
Оператори з вищим пріоритетом виконують у першу чергу.
Приорітет | Оператор | Порядок виконання |
---|---|---|
13 | …++ …-- | зліва направо |
12 | ++… --… | зправа наліво |
11 | * / % | зліва направо |
10 | + - | зліва направо |
9 | << >> | зліва направо |
8 | < <= > >= | зліва направо |
7 | == != | зліва направо |
6 | & | зліва направо |
5 | ^ | зліва направо |
4 | | | зліва направо |
3 | && | зліва направо |
2 | || | зліва направо |
1 | = += -= *= /= %= >>= <<== &= ^= |= | справа наліво |
Зарезервовані слова:
__halt_compiler, abstract, and, array, as, break, callable, case, catch, class, clone, const, continue, declare, default, die, do, echo, else, elseif, empty, enddeclare, endfor, endforeach, endif, endswitch, endwhile, eval, exit, extends, final, for, foreach, function, global, goto, if, implements, include, include_once, instanceof, insteadof, interface, isset, list, namespace, new, or, print, private, protected, public, require, require_once, return, static, switch, throw, trait, try, unset, use, var, while, xor, а також назви функцій і сталих. Залежно від конфігурації сервера і платформи, на якій він працює, цей перелік може змінюватися. Для перегляду всього списка використовують функцію phpinfo().
Структура програми на РНР
Код програми записують, як правило, у текстові файли з розширенням *.php. Редагувати такі файли можна будь-якими текстовими редакторами: Блокнот чи Notepad++ (MS Windows), gEdit, Kate чи Atom (Linux) та ін.
Приклад 1 (виведення тексту)
<html> <body> <?php echo "Helloy World!" ?> </body> </html>
Чіткої структури програми не існує. Код РНР розпочинають тегом <?php і закінчують тегом ?>. Таких вставлень на сторінці може бути досить багато. Може трапитися, що весь файл — це код РНР. Код РНР буде проінтерпретовано і на його місці буде лише результат інтерпретації. У поданому прикладі 1 — результат виконання функції echo, яка виведе повідомлення: Helloy World!
Після кожної вказівки ставлять крапку з комою. Якщо вказівка лише одна, крапку з комою можна не ставити.
Приклад 2 (виведення значень змінних)
<html> <body> <?php $name = "Petrov"; ?> <p>My name is <? php echo $name; ?></p> </body> </html>
<html> <body> <p>My name is Petrov</p> </body> </html>
Приклад 3 (використання змінних різного типу)
<?php $a = "5"; $b = 3; echo $a+$b; //результат буде 8 echo $a.$b; //результат буде 53 ?>
При додаванні тип змінної $a змінено з рядка на числовий. При об’єднанні рядків тип змінної $b змінено з типу число на тип рядок.
Означення (оголошення) функції починають з ключового слова function. Потім записують назву функції, після чого у круглих дужках вказують список змінних-параметрів. Функції не тільки виконують певні перетворення, але й можуть повертати в програму результат цих перетворень. Для цього використовують ключове слово return — див. такий приклад.
<?php function x_cube($x) { $x3=$x*$x*$x; return $x3; } ?>
На початку ознайомлення з мовою програмування зручно використовувати online середовища програмування, які не вимагають встановлення програмного забезпечення.
4. Закріплення вивченого матеріалу
5. Підбиття підсумків уроку
Виставлення оцінок.
6. Домашнє завдання
Для допитливих
Функції роботи з рядками
<?php $a = "Текстовий рядок"; echo strlen($a) //результат буде 15 echo strpos($a, "я"); //результат буде 11 echo substr($a, 10, 3); //результат буде 'ряд' ?>Математичні функції
<?php echo ceil(pow(pi(), 3)); //результат буде 32 ?>Умовний оператор
if ($a > $b) echo "а більше b"; if ($a > $b) {echo "а більше b"; $b = $a; } if ($a > $b) {echo "а більше b";} else {echo "a не перевищує b";}
switch(вираз) { case значення1: вказівка1; [break;] case значення2: вказівка2; [break;] ... case> значенняК: вказівкаK; [break;] [default: вказівка_як_усталено; [break]] }
Примітка. Тут у квадратних дужках вказано необов'язкові складові запису.
Приклад 7
$х="Яблуко"; switch ($x){ case "Яблуко": echo "Це Яблуко"; break; case "Груша": echo "Це Груша"; break; case "Диня": echo "Це Диня"; break; }Повторення (цикли)
$x=0; while ($x++<10) echo $x; $x=0; while ($x<10) {$x++; echo ?x;} $x=1; do {echo $x;} while ($x++<10); $x=1; for ($x=0; $x<10; $x++) echo $x;
Робота з файлами
Тип доступу задають як аргумент функції fopen:
'r' — відкриває файл лише для читання, покажчик — на початку файлу;
<?php $h = fopen ("my_file.html", "w"); ?>
— відкривання на запис файлу my_file.html, якщо він існує, або створення порожнього файлу з такою самою назвою, якщо його ще немає;
<?php $h = fopen ("dir/another_file.txt", "w +"); ?>
— відкривання на запис і читання або створення файлу another_file.txt в директорії (теці) dir;
<?php $h = fopen ("Http://www.server.ru/dir/file.php", "r"); ?>
— відкривання на читання файлу, що розташованого за вказаною адресою у глобальній мережі.
Різні родини операційних систем мають різні угоди щодо ознаки кінця рядка:
Windows пропонує спеціальний параметр t для перетворення символів кінця рядка систем типу Unix в свої символи кінця рядка. На противагу цьому існує опція b, яку використовують найчастіше для бінарних файлів, завдяки чому такої трансляції не буде. Використовувати ці параметри можна, дописавши їх після останнього символу обраного типу доступу до файлу. Наприклад, відкриваючи файл на читання, замість r використовувати rt, щоб перекодувати всі символи кінця рядка в \r\n. Якщо не використовувати прапор b при відкритті бінарних файлів, то можуть з'являтися помилки, пов'язані зі зміною вмісту файлу. З міркувань можливості перенесення програми на різні платформи рекомендовано завжди використовувати прапор b при відкритті файлів за допомогою fopen.
Приклад 10.
<?php $fp = fopen("counter.txt", "a"); // відкривання файлу в режимі запису $mytext = "Текст, який запишемо в файл\r\n"; $test = fwrite($fp,$mytext); // запис у файл if ($test) echo 'Дані у файл записано.'; else echo 'Помилка запису даних у файл.'; fclose($fp); //закриття файлу ?>
Для того, щоб виконати код програми, можна використовувати текстовий редактор із вбудованим інтерпретатором (компілятором) або використовувати локальний чи віддалений веб-сервери.
Багатоплатформні редактори й сервери
Локальні комплекси, які включають в собі всі необхідні сервери (Apache, PHP, MySQL) для розробки веб-сайтів:
Текст упорядкував Романов Володимир Вікторович, вчитель спеціалізованої школи № 269 І-ІІІ ступенів з поглибленим вивченням французької мови міста Києва, під час виконання випускної роботи на курсах підвищення кваліфікації з 05.12.2016 по 09.12.2016.