- •Иркутский государственный университет путей сообщения кафедра “информатика” программирование на языке php
- •Иркутск
- •Содержание
- •Внедрение php-сценария в html-документ
- •Алфавит языка
- •Служебные слова
- •Типы данных
- •Комментарии
- •Переменные
- •Математические функции
- •Математические константы
- •Выражения
- •Операторы присваивания
- •Проверка существования переменной
- •Isset(переменная);
- •Is_string(переменная);
- •Мои поздравления!
- •Платежная ведомость
- •Отладочная печать
- •Var_dump(переменная);
- •Форматирование чисел
- •Number_format(переменная, точность, разделитель1, разделитель2);
- •Массивы
- •Создание массивов
- •Многомерные массивы
- •Операции над массивами Перемещение по массиву
- •Копирование массивов
- •Сортировка массивов
- •Запись значений элементов массива в переменные из списка
- •Преобразование массива в текстовую строку
- •Преобразование текстовой строки в массив
- •Функции для работы с массивами
- •Глобальные предопределенные массивы
- •Работа с формой Работу выполнил студент группы ис-09 Пупкин Василий
- •Дата и время
- •Mktime(час, мин, сек, месяц, день, год);
- •1972450760 Секунд 547902.98888889 часов 22829.291203704 дней 62.546003297818 лет
- •Date(формат, число);
- •Strtotime(дата_время, число);
- •Функции
- •Рекурсия
- •Функция dumper()
- •Функции для работы со строками
- •Регулярные выражения
- •Автономные функции
- •Текстовые файлы
- •Включение файлов
- •Получение информации о файле
- •Блокировка файлов
- •Бинарные файлы
- •Алгоритм и его свойства
- •Схемы алгоритмов
- •Пример записи алгоритма:
- •Базовые структуры
- •Цепочка
- •Ветвления
- •Альтернатива
- •Действие альтернативы:
- •If (условие)
- •Вариант 2 – с использованием операции конъюнкции
- •Часто встречающиеся ошибки программирования:
- •Переключатель
- •Часто встречающиеся ошибки программирования:
- •Бесконечные циклы
- •Циклы с предусловием
- •Программа:
- •Часто встречающиеся ошибки программирования:
- •Циклы с постусловием
- •Программа:
- •Циклы с параметром
- •Действия цикла:
Глобальные предопределенные массивы
В PHPимеются предопределенные массивы с глобальной областью видимости. Их
называют автоглобальнымиилисуперглобальнымимассивами, поскольку они доступны из любого сценария на языкеPHP.
Из большого перечня таких массивов нас будут интересовать только два. Они хранят значения элементов формы HTML-документа, переданные из нее сценариюPHPдля обработки на сервере:
- $_GET– содержит данные, переданные в сценарий как частьURL-адреса. Это происходит в том случае, когда в форме определен метод передачи METHOD=GET,
- $_POST– содержит данные, переданные из формы методомPOST.
Оба этих массива являются ассоциативными, причем индексы их элементов – это имена элементов (полей) формы, задаваемые атрибутамиNAME, а значения – переданные из этих полей данные.
Например, серверному сценарию из HTML-формы было передано методомPOSTсодержимое элемента формы с атрибутомNAME=”user_data”.Это значение может быть получено в сценарии как$_POST[“user_data”]– элемент массива$_POSTс индексом“user_data”.
Пример: создать форму со следующими элементами (полями) и передать их значенияPHP-сценарию методомPOST:
<HTML>
<HEAD>
<TITLE>
Работа с формой
</title>
</head>
<BODY BGCOLOR=silver TEXT=blue>
<H3 ALIGN=center>
Работа с формой
</h3>
<H4 ALIGN=center>
Работу выполнил<BR>
студент группы ИС-09<BR>
Пупкин Василий<BR>
</h4>
<P>
<FORM METHOD=POST NAME="forma_1">
Ваша группа:<BR>
<SELECT NAME="GRUPPA" SIZE=1>
<OPTION VALUE=0>
<OPTION VALUE=1>ПИ-11
<OPTION VALUE=2>ИС-11
<OPTION VALUE=3>ИСс-10
<OPTION VALUE=4>ИС-09
</select>
<BR>
Ваша фамилия:
<INPUT TYPE=TEXT NAME="FAM" VALUE="" SIZE=20>
<BR>
<P>
<FIELDSET WIDTH=100>
<LEGEND>
Владение алгоритмическим языком:
</legend>
<BR>
<!--имя для всех CHECKBOX одно - массив LANG[]-->
<INPUT TYPE=CHECKBOX NAME=LANG[] VALUE=1>Pascal<BR>
<INPUT TYPE=CHECKBOX NAME=LANG[] VALUE=2>C<BR>
<INPUT TYPE=CHECKBOX NAME=LANG[] VALUE=3>C++<BR>
<INPUT TYPE=CHECKBOX NAME=LANG[] VALUE=4>JAVA<BR>
<INPUT TYPE=CHECKBOX NAME=LANG[] VALUE=5>PHP<BR>
</fieldset>
<BR>
Форма обучения:<BR>
<!--имя для всех радиокнопок одно - FORMA_OBUCH-->
<INPUT TYPE=RADIO NAME=FORMA_OBUCH VALUE=1>очная<BR>
<INPUT TYPE=RADIO NAME=FORMA_OBUCH VALUE=2>заочная<BR>
<BR>
<INPUT TYPE=SUBMIT VALUE="Отправить">
<BR>
<INPUT TYPE=RESET VALUE="Очистить">
<BR>
<?php
echo "<BR>Данные, полученные из формы:<BR>";
foreach ($_POST as $index=>$value)
{
echo "$index=>$value";
echo "<BR>";
}
echo "<BR>";
echo 'Выбранные CHECKBOX в массиве $_POST["LANG"]:<BR>';
foreach ($_POST["LANG"] as $index=>$value)
{
echo "$index=>$value";
echo "<BR>";
}
echo "<BR>";
echo 'Общая структура массива $_POST:<BR>';
var_dump($_POST);
echo "<BR>";
?>
</form>
</body>
</html>
Результат работы программы:
Работа с формой Работу выполнил студент группы ис-09 Пупкин Василий
Данные, полученные из формы: GRUPPA=>4 FAM=>Пупкин LANG=>Array FORMA_OBUCH=>1 Выбранные CHECKBOX в массиве $_POST["LANG"]: 0=>1 1=>2 2=>5 Общая структура массива $_POST: array(4) { ["GRUPPA"]=> string(1) "4" ["FAM"]=> string(6) "Пупкин" ["LANG"]=> array(3) { [0]=> string(1) "1" [1]=> string(1) "2" [2]=> string(1) "5" } ["FORMA_OBUCH"]=> string(1) "1" }