Функции работы с массивами

ОСНОВЫ СОЗДАНИЯ ИНФОРМАЦИОННЫХ РЕСУРСОВ НА ЯЗЫКЕ РНР

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к лабораторным работам по курсу «Мировые информационные ресурсы»

 

 

Уфа 2006

 

Составитель: Е.И. Филосова

 

 

ББК

УДК 519.682

 

 

Методические указания к лабораторным работам по курсу «Мировые информационные ресурсы» для студентов специальности 080801 «ПРИКЛАДНАЯ ИНФОРМАТИКА (В ЭКОНОМИКЕ)» / Уфимский государственный авиационный технический университет; Составитель Е.И. Филосова, Уфа, 2006 - 24с.

 

 

В методических указаниях представлены лабораторные работы по изучению раздела «Основы создания информационных ресурсов на языке РНР» курса «Мировые информационные ресурсы». Представлены примеры, контрольные вопросы и задания для самостоятельной работы. Методические указания могут быть так же использованы в курсовом и дипломном проектировании.

 

 

Ил. 0, табл. 7, Библиогр.: 7 назв.

 

Рецензенты: доц.

доц.

 

 

© Уфимский государственный авиационный технический университет, 2006

Содержание

Цель работы.. 4

1 Общие положения. 4

1.1 Основы синтаксиса. 4

1.2 Переменные. Константы.. 4

1.3 Операторы.. 5

1.4 Типы данных. 6

1.4.1 Тип array (массив) 6

1.5 Условные операторы.. 8

1.5.1 Оператор if 8

1.5.2 Оператор switch. 9

1.6 Циклы.. 9

1.6.1 Цикл с предусловием while. 9

1.6.2 Цикл с постусловием do... while. 10

1.6.3 Цикл со счетчиком for 10

1.6.4 Цикл перебора массива foreach. 10

1.7 Операторы передачи управления. 11

1.8 Операторы включения. 11

1.9 Формы в HTML-документах. 11

1.10 Тег FORM – контейнер форм. 12

1.11 Тег INPUT и способы его использования. 12

1.11.1 Однострочные поля ввода. 12

1.11.2 Поле ввода пароля. 12

1.11.3 Скрытое текстовое поле. 13

1.11.4 Независимые переключатели. 13

1.11.5 Зависимые переключатели. 13

1.11.6 Кнопка отправки формы.. 13

1.11.7 Кнопка сброса. 14

1.11.8 Кнопка отправки с индивидуальным рисунком. 14

1.11.9 Загрузка файлов. 14

1.12 Ввод многострочного текста. Тег TEXTAREA.. 14

1.13 Списки выбора. Тег SELECT. 15

1.13.1 Списки с единственным выбором. 15

1.13.2 Списки множественного выбора. 15

1.14 Обработка запросов с помощью РНР. 15

2 Задание. 16

2.1 Вывод на экран и переменные в РНР. 16

2.2 Работа с условными операторами и операторами цикла в РНР. 17

2.3 Передача параметров по ссылке, передача параметров из формы. 18

2.4 Создание формы для обработки заказов электронного магазина. 18

3 Требования к отчету. 22

4 Контрольные вопросы.. 23

 



Цель работы

Овладеть основными приемами создания и обработки web-документов с помощью языка серверного скриптования PHP.

Общие положения

РНР (официальное название "PHP: Hypertext Preprocessor") лучше всего охарактеризовать как работающий на стороне сервера встроенный язык Web-сценариев, позволяющий разработчикам быстро и эффективно строить динамические web-приложения.

Основы синтаксиса

РНР может встраивается в HTML-код следующим способом: первый вариант <?php?>, сокращенный вариант <??>.

Программа на РНР — это набор команд (инструкций). В РНР инструкции разделяются точкой с запятой.

<html> <head>   <title>Пример</title> </head> <body>   <?php         echo "Привет, это PHP-скрипт!";         ?> </body></html>

Часто при написании программ возникает необходимость делать какие-либо комментарии к коду, которые никак не влияют на сам код, а только поясняют его. РНР поддерживает несколько видов комментариев: в стиле Си, C++ и оболочки Unix. Символы // и # обозначают начало однострочных комментариев, /* и */ - соответственно начало и конец многострочных комментариев.

Важным элементом каждого языка являются переменные, констан­ты и операторы, применяемые к этим переменным и константам.

Переменные. Константы

Переменная в РНР обозначается знаком доллара, за которым следу­ет ее имя. Например: $my_var. Имя переменной чувствительно к регистру, т.е. переменные $my_var и $My_var различны.

Имена переменных соответствуют тем же правилам, что и остальные наименования в РНР: правильное имя переменной должно начинаться с буквы или символа подчеркивания с последующими в любом количестве буквами, цифрами или символами подчеркивания.

Для хранения постоянных величин, т.е. таких величин, значение ко­торых не меняется в ходе выполнения скрипта, используются константы. Для определения константы существует специальная функция define(). Ее синтаксис таков:

define("Имя_константы", "Значение_константы", [Нечувствительность_к_регистру])

По умолчанию имена констант чувствительны к регистру. Для каж­дой константы это можно изменить, указав в качестве значения аргумента Нечувствительность_к_регистру значение True. Существует соглашение, по которому имена констант всегда пишутся в верхнем регистре. Получить значение константы можно, указав ее имя. В отличие от переменных, не нужно предварять имя константы символом $. Кроме того, для получения значения константы можно использовать функцию constant () с именем константы в качестве параметра.

Операторы

Операторы позволяют выполнять различные действия с переменны­ми, константами и выражениями.

Таблица 1

Арифметические операторы

Обозначение Название Пример
+ Сложения $а + $b
- Вычитание $а - $b
* Умножение $a*$b
/ Деление $а / $b
% Остаток от деления $а % $b
Конкатенация (сложение строк) $с = $а.$b

Таблица 2

Операторы присваивания

Обозначение Описание Пример
= Переменной слева от оператора будет присвоено значение, полученное в результате выпол­нения каких-либо операций с правой стороны $а =($b = 4) +5; ($а будет равна 9, $b четырем)
+= Прибавляет к переменной число и затем прис­ваивает ей полученное значение $а += 5; (то же, что и $а = $а + 5;)
.= Сокращенно обозначает комби­нацию операций конкатенации и присваивания (сначала добав­ляется строка, потом получен­ная строка записывается в переменную) $b = "Привет";  $b.= "всем"; В результате:  $b="Привет всем"

Таблица 3

  Логические операторы

Обозначение Название Пример Описание
аnd && И $а and $b $а && $b $а и $b истинны (True)
оr  || Или $а or $b $а || $b Хотя бы одна из переменных $а или $b истинна (возможно, что и обе)
хоr Исключающее или $а хоr $b Только одна из переменных истинна.
! Инверсия (NOT) !$а Если $а=Тruе, то!$a=False и наоборот

Таблица 4

Операторы сравнения

Обозначение Название Пример Описание
== Равенство $а == $b Значения переменных равны
=== Эквивалентность $а === $b Равны значения и типы переменных
!=, <> Неравенство $а!= $b, $а <>$b Значения переменных не равны
!== Неэквивалентность $а!= = $b Переменные не эквивалентны
< Меньше $а<$b  
> Больше $а>$b  
<= Меньше или равно $а <= $b  
>= Больше или равно $а >= $b  

Таблица 6

Операторы инкремента и декремента

Обозначение Название Описание Пример
++$а Пре-инкремент Увеличивает $а на единицу и возвращает $а

<?

$а=4;

echo "Должно быть 5:".++$а; echo "Должно быть 5:".$а++;

echo "Должно быть 6:".$а;

echo "Должно быть 5:".--$а;

echo "Должно быть 5:".$а--;

echo "Должно быть 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 Удаляет часть массива  

Условные операторы

 1.5.1 Оператор if

Этот оператор позволяет выполнять фрагменты кода в зависимости от условия. Структуру оператора if можно представить следующим образом:


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: