Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ekzamenatsionnye_otvuty.docx
Скачиваний:
45
Добавлен:
15.03.2015
Размер:
141.29 Кб
Скачать

Описание

public int SplFixedArray::getSize ( void )

Получает размер массива.

<?php $array = new SplFixedArray(5); echo $array->getSize()."\n"; $array->setSize(10); echo $array->getSize()."\n"; ?>

count( )

Функция count( ) выполняет ту же операцию, что и sizeof ( ), -- она возвращает количество значений, содержащихся в массиве. Синтаксис функции count ( ):

int count (mixed переменная)

Просмотр массива в цикле

Для итерационного просмотра содержимого массива служит функция foreach. С ее помощью можно просмотреть и простой (проиндексированный числами) массив, и ассоциативный, и многомерный.

<html>

<head>

<title>Просмотр массива</title>

</head>

<body>

<?php

$фрукты = array("яблоко", "груша", "слива", "персик", "груша");

foreach ($фрукты as $фрукт)

{

echo "$фрукт<br>";

}

?>

</body>

</html>

Пример 4

<html>

<head>

<title>Просмотр ассоциативного массива</title>

</head>

<body>

<?php

$цена = array ("помидоры" => 15, "огурцы" => 12);

foreach ($цена as $овощи => $руб)

{

echo "$овощи стоят $руб руб.<br>";

}

?>

</body>

</html>

Вывод многомерного массива. FOREACH

Чтобы вывести все элементы многомерного массива можно использовать цикл foreach. Воспользуемся циклом foreach и извлечем все элементы из нашего примера.

PHP

foreach($auto as $brand => $massiv)

{

foreach($massiv as $inner_key => $value)

{

echo "[$brand][$inner_key] = $value

";

}

}

В результате браузер выведет следующий текст:

[LADA][0] = 1999

[LADA][1] = 2001

[BMW][0] = 1991

[BMW][1] = 2009

16)Сортировка массивов (сортировка простого массива с помощью функции sort(), сортировка ассоциативного массива по имени с помощью функции ksort().

sort( )

Простейшая функция sort( ) сортирует элементы массива по возрастанию (от меньших к большим). Синтаксис функции sort ( ):

void sort (array массив)

ksort( )

Функция ksort( ) сортирует массив по ключам, сохраняя исходные ассоциации ключей со значениями. Синтаксис функции ksort( ):

void ksort (array массив)

17)Управление массивами (объединение массивов функцией array_merge(), добавление элементов к массиву с помощью функции array_shift(), выделение части массива с помощью функции array_shift().

array_merge

(PHP 4, PHP 5)

array_merge — Сливает один или большее количество массивов

array array_merge ( array $array1 [, array $... ] )

Сливает элементы одного или большего количества массивов таким образом, что значения одного массива присоединяются к концу предыдущего. Результатом работы функции является новый массив.

Если входные массивы имеют одинаковые строковые ключи, тогда каждое последующее значение будет заменять предыдущее. Однако, если массивы имеют одинаковые числовые ключи, значение, упомянутое последним, не заменитисходное значение, а будет добавлено в конец массива.

В результирующем массиве значения исходного массива с числовыми ключами будут перенумерованы в возрастающем порядке, начиная с нуля.

<?php $array1 = array("color" => "red", 2, 4); $array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4); $result = array_merge($array1, $array2); print_r($result); ?>

array_shift()

Функция array_shift() аналогична аrrау_рор() с одним отличием: элемент удаляется из начала(левого края) массива. Все остальные элементы массива сдвигаются на одну позицию к началу массива. У функции array_shift() такой же синтаксис, как и у аrrау_рор():

array_shift(array массив)

Для получения части массива можно использовать функцию 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, -2, 1); // "d" $output = array_slice ($input, 0, 3); // "a", "b", "c"

array_push(alist &$Arr, mixed $var1 [, mixed $var2, …])

Эта функция добавляет к списку $Arrэлементы$var1,$var2и т. д. Она присваивает им числовые индексы — точно так же, как это происходит для стандарных[]. Если вам нужно добавить всего один элемент, наверное, проще и будет воспользоваться этим оператором:

array_push($Arr,1000); // вызываем функцию… $Arr[]=100; // то же самое, но короче

Обратите внимание, что функция array_push()воспринимает массив, как стек, и добавляет элементы всегда в его конец. Она возвращает новое число элементов в массиве.

18)Управление потоком в РНР. Условные инструкции (инструкции if, блок else инструкции if, инструкция switch, оператор ?).

elseif/else if

(PHP 4, PHP 5)

Конструкция elseif, как ее имя и говорит есть сочетание if и else. Аналогично else, она расширяет оператор if для выполнения различных выражений в случае, когда условие начального оператора if эквивалентно FALSE. Однако, в отличии от else, выполнение альтернативного выражения произойдет только тогда, когда условие оператора elseif будет являться равным TRUE. К примеру, следующий код может выводить a больше, чем b, a равно b or a меньше, чем b:

<?php if ($a > $b) {     echo "a больше, чем b"; } elseif ($a == $b) {     echo "a равен b"; } else {     echo "a меньше, чем b"; } ?>

инструкция switch

<?php switch ($i) {     case 0:         echo "i равно 0";     case 1:         echo "i равно 1";     case 2:         echo "i равно 2";

  default:        echo "i не равно 0, 1 или 2"; } ?>

19)Управление потоком. Циклы в РНР (цикл while, цикл do … while, цикл for, прерывание циклов инструкцией continue, вложенные циклы).

цикл с предусловием while работает по следующим принципам:

  1. Вычисляется значение логического выражения.

  2. Если значение истинно, выполняется тело цикла, в противном случае - переходим на следующий за циклом оператор.

Синтаксис цикла с предусловием:

while (логическое_выражение) инструкция;

В данном случае телом цикла является инструкция. Обычно тело цикла состоит из большого числа операторов. Приведем пример цикла с предусловием while:

<?php $x=0; while ($x++<10) echo $x; // Выводит 12345678910 ?>

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

Цикл со счетчиком используется для выполнения тела цикла определенное число раз. С помощью цикла forможно (и нужно) создавать конструкции, которые будут выполнять действия совсем не такие тривиальные, как простая переборка значения счетчика.

Синтаксис цикла forтакой:

for (инициализирующие_команды; условие_цикла; команды_после_итерации) { тело_цикла; }

Цикл forначинает свою работу с выполнения инициализирующих_команд. Данные команды выполняются только один раз. После этого проверяется условие_цикла, если оно истинно (true), то выполняется тело_цикла. После того, как будет выполнен последний оператор тела, выполняются команды_после_итерации. Затем снова проверяется условие_цикла. Если оно истинно (true), выполняется тело_цикла и команды_после_итерации, и.т.д.

<?php for ($x=0; $x<10; $x++) echo $x; ?>

Данный сценарий выводит: 0123456789

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

В отличие от цикла while, этот цикл проверяет значение выражения не до, а после каждого прохода (итерации). Таким образом, тело цикла выполняется хотя бы один раз. Синтаксис цикла с постусловием такой:

do { тело_цикла; } while (логическое_выражение);

После очередной итерации проверяется, истинно ли логическое_выражение, и, если это так, управление передается вновь на начало цикла, в противном случае цикл обрывается.Альтернативного синтаксисадляdo-whileразработчики PHP не предусмотрели (видимо, из-за того, что, в отличие от прикладного программирования, этот цикл довольно редко используется при программировании web-приложений).

Пример скрипта, показывающего работу цикла с постусловием do-while:

<?php $x = 1; do {      echo $x; } while ($x++<10); ?>

Рассмотренный сценарий выводит: 12345678910

Конструкция continue

Конструкция continueтак же, как иbreak, работает только "в паре" с циклическими конструкциями. Она немедленно завершает текущую итерацию цикла и переходит к новой (конечно, если выполняется условие цикла для цикла с предусловием). Точно так же, как и дляbreak, дляcontinueможно указать уровень вложенности цикла, который будет продолжен по возврату управления. В основномcontinueпозволяет вам сэкономить количество фигурных скобок в коде и увеличить его удобочитаемость. Это чаще всего бывает нужно в циклах-фильтрах, когда требуется перебрать некоторое количество объектов и выбрать из них только те, которые удовлетворяют определенным условиям. Приведем пример использования конструкцииcontinue:

<?php $x=0; while ($x++<5) { if ($x==3) continue; echo "<b>Итерация $x</b><br>"; } // Цикл прервется только на третьей итерации ?>

Рассмотренный скрипт выводит:

Итерация 1 Итерация 2 Итерация 4 Итерация 5

Грамотное использование breakиcontinueпозволяет заметно улучшить "читабельность" кода и количество блоковelse.

Добавить в избранное|Сделать стартовой Project.Net.Ru|Помощь

Цикл называется вложенным, если он размещается внутри другого цикла

20)Работа с формами (передача данных из форм HTML в РНР-программу).

<form>

При создании формы участвуют два важных атрибута: actionиmethod.

action

Используется для ввода URL, куда отправляется форма. Это может быть PHP-файл, который обрабатывает ввод.

method

Может иметь значение "post" или "get", которые являются различными методами передачи данных. Пока вам нет необходимости углубляться в отличия этих методов; методом "get" данные отправляются через URL, а методом "post" - как блок данных через стандартный сервис ввода/standard input service (STDIN). В последнем пройденном уроке мы видели, как данные получаются через URL с использованием $_GET. В этом уроке мы рассмотрим, как получаются данные, отправленные через форму методом "post".

Соседние файлы в предмете Программирование для Web