- Преподавателю
- Информатика
- Лекция Введение в PHP
Лекция Введение в PHP
Раздел | Информатика |
Класс | 8 класс |
Тип | Статьи |
Автор | Куренкова Н.В. |
Дата | 20.02.2016 |
Формат | docx |
Изображения | Нет |
Введение в РНР
PHP - это язык серверных скриптов (server scripting language), встраиваемый в HTML, который интерпретируется и выполняется на сервере.
HTTP - протокол передачи гиперссылок - является стандартом взаимодействия, регулирующим порядок направления запросов и получения ответов - процесса, происходящего между браузером, запущенным на компьютере конечного пользователя, и веб - сервером. Задача сервера состоит в том, чтобы принять запрос от клиента и попытаться дать на него содержательный ответ, обычно передавая ему запрошенную веб - страницу. Именно поэтому и используется термин сервер (обслуживающий). Партнером, взаимодействующим с сервером, является клиент, поэтому данное понятие применяется как к веб - браузеру, так и к компьютеру, на котором он работает.
Между клиентом и сервером может располагаться ряд других устройств, например, маршрутизаторы, модули доступа, шюзы и т.д., служащие для выполнения безошибочного перемещения запросов и ответов между клиентом и сервером.
Процедура «запрос - ответ»
Динамическая последовательность процесса «запрос - ответ», выполняемого клиентом и сервером:
Веб-браузер
Интернет
Веб-сервер
Процессор РНР
Жесткий диск
База данных MySQL
1
Ввод URL
2
Поиск IP
3
Запрос главной страницы
4
Получение запроса
5
Извлечение страницы
6
Содержит PHP
7
Обработка PHP
8
Выполнение SQL
9
Получение данных
10
Возвращение страницы
11
Отображение страницы
Преимущество использования РНР
Использование РНР существенно упрощает встраивание средств, придающих веб - страницам динамические свойства. Когда страницам присваивается расширение .php, у них появляется прямой доступ к языку сценариев, который хотя и не обладает быстротой кода, скомпилированного на С или ему подобных языках, но все же работает невероятно быстро и к тому же очень хорошо вписывается в код HTML.
Кроме этого в PHP включена поддержка многих баз данных (databases), что делает написание Web-приложений с использованием БД до невозможности простым. Вот неполный перечень поддерживаемых БД: Adabas D, InterBase, Solid dBase , mSQL, Sybase Empress, MySQL , Velocis FilePro, Oracle, Unix dbm Informix , PostgreSQL , ODBC.
Вдобавок ко всему PHP понимает протоколы IMAP, SNMP, NNTP, POP3 и даже HTTP, а также имеет возможность работать с сокетами (sockets) и общаться по другим протоколам.
Основной синтаксис РНР
-
Программы на РНР встраиваются в текст web - страницы при помощи тегов <?php и ?>.
<?php
…
Текст программы
….
?>
Для PHP-движка этот код означает начало блока команд, которые надо обработать и
Выполнить. Все, что находится за пределами этой конструкции, отправляется клиенту в виде простого HTML.
Пример 1.
test
head>
<body>
<?php
echo "Сегодняшнее число : ";
echo date("l F d, Y");
?>
body>html>
Встроенная функция date отображает текущую дату, соответствующую системному времени сервера.
РНР - конструкцию можно помещать непосредственно рядом с кодом РНР:
Сегодняшнее число: <? php echo date("l F d, Y"); ?>
-
Все команды РНР завершаются точкой с запятой!
-
Символ $ перед именами всех переменных. Это нужно для того, чтобы РНР - парсер работал быстрее, сразу же понимая, что работает с переменной.
Пример.2 Варианты присваивания значений переменным
<?php
$mycounter=1;
$mystring = "Hello";
$myarray=array("One", "Two", "Three");
?>
Вывод текста в HTML-страницу
Самый простейший способ общения с пользователем через Web-страницу, это послать ему в странице какой-нибудь текст. Это можно сделать двумя способами: с помощью функции print или echo:
<?php
print "Hello, world.";
?>
<?php
echo "Hello, world.";
?>
Эти команды очень похожи друг на друга, но print - это функция, воспринимающая единственный параметр, а echo - конструкция языка РНР.
В общем, команда echo работает при выводе обычного текста быстрее print, поскольку не является функцией и не устанавливает возвращаемое значение.
С другой стороны, поскольку она не является функцией, ее, в отличие от print, нельзя использовать как часть более сложного выражения.
Пример 3. Вывод информации о том, является ли значение переменной истинным или ложным при помощи print
$b ? print "true" : print "false";
Основные переменные
Переменная
Пример
Строковые переменные
$name = "Fred Smith";
$usernsme1 = $usernsme1;
Числовые переменные
$count = 15;
$count = 15.8;
Массивы
Конструкция array();
$team = array("Bill","Mike","Jim");
echo $team[2]; //отображает имя Jim
Двумерные массивы
$oxo = array (array(5, 8, 2),
array(7, 6, 0),
array(4, 1, 3));
echo $oxo[1][2]; //возвращение третьего элемента во второй строке
Операторы
Арифметические операторы
Оператор
Описание
Пример
+
Сложение
$j + 1
-
Вычитание
$j - 7
Умножение
$j * 11
/
Деление
$j / 4
%
Модуль (остаток от деления)
$j % 9
++
Инкремент (приращение)
++$j
--
Декремент (отрицательное приращение)
--$j
Операторы присваивания
Оператор
Пример
Эквивалент
=
$j = 15
$j = 15
+=
$j += 5
$j = $j + 5
-=
$j -= 3
$j = $j - 3
*=
$j *= 4
$j = $j * 4
/=
$j /= 12
$j = $j / 12
.=
$j .= $k
$j = $j . $k
%=
$j %= 6
$j = $j % 6
Операторы сравнения
Оператор
Описание
Пример
==
Равно
$j == 15
!=
Не равно
$j != 5
>
Больше чем
$j > 9
<
Меньше чем
$j < 4
>=
Больше чем или равно
$j >= 105
<=
Меньше чем или равно
$j <= 18
Логические операторы
Оператор
Описание
Пример
&&
И
$j == 15 && $k == 9
And
Низкоприоритетное И
$j == 15 and $k == 9
||
ИЛИ
$j < 5 || $k >9
or
Низкоприоритетное ИЛИ
$j < 5 or $k >9
!
НЕ
! ($j == $k )
xor
Исключающее НЕ
$j or $k
Математические функции
Наряду с математическими операторами, в РНР предусмотрено большое количество математических функций. Ниже приведен перечень наиболее часто употребительных функций.
• abs Абсолютное значение (модуль) числа.
• ceil Округление числа в большую сторону.
• cos Косинус.
• deg2 rad Преобразование градусов в радианы.
• ехр Вычисление экспоненты заданного числа.
• floor Округление числа в меньшую сторону.
• fmod Вещественный остаток от деления двух чисел.
• hexdec Преобразование строки, представляющей шестнадцатеричное число, в целочисленное значение.
• hypot Вычисление гипотенузы по двум катетам.
• loglO Десятичный логарифм.
• log Натуральный логарифм.
• max Максимум заданных чисел.
• min Минимум заданных чисел.
• mtgetrandmax Максимальное значение, которое можно получить функцией mtr and ().
• mtrand Генератор псевдослучайных чисел по алгоритму витка Мерсенна1.
• mtsrand Инициализация генератора псевдослучайных чисел по алгоритму витка Мерсенна.
• octdec Преобразование строки, представляющей восьмеричное число, в целочисленное значение.
• pi Значение числа пи.
• pow Возведение в степень.
• rad2deg Преобразования радианов в градусы.
• rand Генератор псевдослучайных чисел.
• round Округление числа.
• sin Синус.
• sqrt Квадратный корень.
• tan Тангенс.
Пример.4
<?php
echo "sqrt (9) = ", sqrt (9);
?>
Условные операторы IF, ELSE, ELSEIF
If (логическое выражение)
{
если условие true
}
else
{
если условие false
}
Пример 4. Использование if
<?php
$bank_balance = 200;
$money = 100;
if ($bank_balance < 300)
{
$money += 1000;
$bank_balance += $money;
echo "Баланс ", $bank_balance, "р.";
}
?>
Пример 5. Использование if…else
<?php
$bank_balance = 200;
$money = 100;
$savings=50;
if ($bank_balance < 300)
{
$money += 1000;
$bank_balance += $money;
}
else
{
$savings += 50;
$bank_balance -= 50;
}
echo "Баланс ", $bank_balance, "р.
Сбережения ", $savings, "р.";
?>
Пример 6. Использование if…elseif…else
<?php
$score = 4;
if ($score == 5)
echo "Отлично";
elseif ($score == 4)
echo "Хорошо";
elseif ($score == 3)
echo "Удовлетворительно";
else
echo "Неудовлетворительно";
?>
Циклы FOR, WHILE, DO…WHILE
Пример 7. 1 Цикл for
<?php
for ($counter = 0; $counter < 5; $counter++)
{
echo "Эта строка будет выведена пять paз <BR/>";
}
?>
Пример 7.2
<?php
for ($varl = 1, $var2 = 2; $varl < 5 && $var2 < 5; $varl++ , $var2++)
{
echo "$varl x $var2 = ", $varl*$var2, "
";
}
?>
Пример 8. Использование while
<?php
$value = 1;
while ($value < 100)
{
echo "Значение $value = ", $value, "
";
$value *= 2 ;
}
?>
Пример 9. Использование do… while
<?php
$value = 2;
do
{
echo $value, "
";
$value *= 2;
}
while ($value < 100);
?>
8