
- •Основы создания информационных ресурсов на языке рнр методические указания
- •Содержание
- •Цель работы
- •1 Общие положения
- •1.1 Основы синтаксиса
- •1.2 Переменные. Константы
- •1.3 Операторы
- •1.4 Типы данных
- •1.4.1 Тип array (массив)
- •1.5 Условные операторы
- •1.5.1 Оператор if
- •If (выражение) блок_выполнения
- •If (выражение) блок_выполнения else блок_выполнения1
- •If (выражение) блок_выполнения;
- •1.5.2 Оператор switch
- •Do {блок_выполнения} while (выражение);
- •For (выражение1;выражение2;выражение3) {блок_выполнения}
- •1.7 Операторы передачи управления
- •1.8 Операторы включения
- •1.9 Формы в html-документах
- •1.10 Тег form – контейнер форм
- •1.11.5 Зависимые переключатели
- •1.11.6 Кнопка отправки формы
- •1.13 Списки выбора. Тег select
- •1.13.1 Списки с единственным выбором
- •1.13.2 Списки множественного выбора
- •1.14 Обработка запросов с помощью рнр
- •2 Задание
- •2.1 Вывод на экран и переменные в рнр.
- •2.2 Работа с условными операторами и операторами цикла в рнр.
- •2.3 Передача параметров по ссылке, передача параметров из формы.
- •2.4 Создание формы для обработки заказов электронного магазина
- •3 Требования к отчету
- •4 Контрольные вопросы
1.4 Типы данных
РНР поддерживает восемь простых типов данных. Четыре скалярных типа:
boolean (логический). Этот простейший тип выражает истинность значения, т.е. переменная этого типа может иметь только два значения - истина TRUE или ложь FALSE;
integer (целый). Этот тип задает число из множества целых чисел. Целые могут быть указаны в десятичной, шестнадцатеричной или восьмеричной системе счисления, по желанию с предшествующим знаком «-» или «+». Если используется восьмеричная система счисления, нужно предварить число 0 (нулем), для использования шестнадцатеричной системы нужно поставить перед числом 0х;
float (с плавающей точкой);
string (строковый). Строка - это набор символов. В РНР символ - это то же самое, что байт, это значит, что существует ровно 256 различных символов. Строка в РНР может быть определена с помощью одинарных или двойных кавычек. Самым важным свойством строк в двойных кавычках является обработка переменных.
Два смешанных типа:
• array (массив);
• object (объект).
И два специальных типа:
• resource (ресурс);
• NULL.
В РНР не принято явное объявление типов переменных.
1.4.1 Тип array (массив)
Массив в РНР представляет собой упорядоченную карту - тип, который преобразует значения в ключи. Определить массив можно с помощью конструкции array() или непосредственно задавая значения его элементам.
Определение при помощи array()
array ([key] => value, [keyl] => valuel, ... )
Языковая конструкция array () принимает в качестве параметров пары ключ => значение, разделенные запятыми. Символ => устанавливает соответствие между значением и его ключом. Ключ может быть как целым числом, так и строкой, а значение может быть любого имеющегося в РНР типа. Числовой ключ массива часто называют индексом. Индексирование массива в РНР начинается с нуля. Значение элемента массива можно получить, указав после имени массива в квадратных скобках ключ
Если для элемента ключ не задан, то в качестве ключа берется максимальный числовой ключ, увеличенный на единицу. Если указать ключ, которому уже было присвоено какое-то значение, то оно будет перезаписано. Если максимальный ключ — отрицательное число, то следующим ключом массива будет ноль (0).
<?php // массивы $аrr и $arr1 эквиваленты
$аrr = аrrау(5 => 43, 32, 56, "b" => 12);
$arr1 = array(5 => 43, 6 => 32, 7 => 56, "b" => 12);
?>
Для работы с массивами можно применять следующие функции:
Таблица 7
Функции работы с массивами
Название |
Обозначение |
Пример |
range |
Заполняет список целыми числами |
$arr=range(4,9); // теперь $arr = array(4, 5, 6, 7, 8, 9); |
array_reverse |
Расстановка элементов массива в обратном порядке |
$arr = array_reverse($arr); // теперь $arr = array(9, 8, 7, 6, 5, 4); |
shuffle |
Перемешивание элементов массива |
shuffle($A); /* теперь в массиве arr числа 4,5,6,7,8,9 в случайном порядке*/ |
sort
|
Сортировка массива по возрастанию |
$A = array("One", "Two", "Tree", "Four"); sort($A); // выводит "0:Four 1:One 2: Tree 3: Two " |
rsort
|
Сортировка массива по убыванию |
asort($A); // выводит " 0:Two 1:Tree 2:One 3:Four " |
asort
|
Сортировка ассоциативного массива по возрастанию |
$A=array("a"=>"Zero","b"=>"Weapon","c"=>"Alpha","d"=>"Processor"); asort($A); //c=>Alpha d=>Processor b=>Weapon a=>Zero |
arsort
|
Сортировка ассоциативного массива по убыванию |
arsort($А); // a=>Zero b=>Weapon d=>Processor c=>Alpha |
ksort
|
Сортировка массива по возрастанию ключей |
ksort($A); // a=>Processor b=>Alpha c=>Weapon d=>Zero |
krsort
|
Сортировка массива по убыванию индексов |
krsort($A); // d=>Zero c=>Weapon b=>Alpha a=>Processor |
unset |
удаляет элемент массива |
unset($arr[l]); //теперь $arr = array(5, 6, 7, 8, 9); |
reset
|
Производит сброс курсора массива |
Устанавливает внутренний курсор массива на его начало и возвращает значение начального элемента |
end
|
Производит перенос курсора в конец массива |
Устанавливает внутренний курсор массива на последний элемент и возвращает значение начального элемента |
next |
Производит перенос курсора вперед |
Возвращает значение элемента, на котором в данный момент находится курсор, и перемещает курсор массива на следующий элемент |
Название |
Обозначение |
Пример |
prev
|
Производит перенос курсора назад |
Возвращает значение элемента, на котором в данный момент находится курсор, и перемещает курсор массива на предыдущий элемент |
current |
Определение текущего элемента массива |
Возвращает значение элемента, на котором в данный момент находится курсор массива, при этом не сдвигая курсор |
key |
Возвращает индекс текущего элемента массива |
|
array_keys
|
Возвращает список из ключей массива |
$arr = array(0 => 100, "color" => "red", 15); array_keys($arr); //возвратит array(0, "color", 1) |
array_values() |
Переиндексирует массив |
|
sizeof count |
Возвращает число элементов массива |
|
array_sum
|
Возвращает сумму всех элементов массива |
$arr = array(2,4,6,7); echo "Сумма: ".array_sum($arr); // Сумма: 19 |
array_slice |
Получение части массива |
$input = array("a", "b", "c", "d", "e"); $output = array_slice($input, 2); // "c", "d", "e" $output = array_slice($input, 2, -1); // "c", "d" $output = array_slice($input, 0, 3);// "a", "b", "c" |
array_search in_array |
Поиск значения в массиве |
If (in_array(“b”,$input)) echo “Да”; $k= array_search(“b”,$input); // выведет 1 |
array_splice |
Удаляет часть массива |
|