Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Экзамен ТП.doc
Скачиваний:
0
Добавлен:
21.09.2019
Размер:
143.87 Кб
Скачать
  1. Работа с массивами (получение размера массива, просмотр массива с помощью цикла, просмотр в цикле ассоциативного массива, вывод многомерного массива).

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

sizeof( )

count( )

Просмотр массива с помощью цикла

<html> <head>

<title> Листинг 9-2. Просмотр массива

</title> </head> <body>

<?php

$colors = array("red", "green", "blue", "gray");

foreach ($colors as $ind)

{print "<p>$ind";

}

?>

</body> </html>

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

Для того чтобы просмотреть в цикле ассоциативный массив, нужно написать

оператор foreach несколько по-другому. В этом случае конструкция должна

выглядеть следующим образом:

foreach ($array as $key=>$value)

Здесь $array — это имя массива, $key — переменная, в которой

сохраняется имя каждого элемента массива, a $value — переменная, где

временно сохраняется значение каждого элемента.

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

<html> <head>

<title> Листинг 9-3. Просмотр многомерного массива

в цикле </title> </head>

<body>

<?php

$sals = array ( #1

array ('name'=>"Peel",

'city'=>"London",

'comm'=>0.12

),

array ('name'=>" Serres",

'city'=>"San Jose",

'comm'=>0.13

),

array ('name'=>"Rifkin",

'city'=>"Barcelona",

'comm'=>0.15

)

); #1

foreach ($sals as $ind)

{ #2

foreach ($ind as $key=>$val)

{

print "$key: $val<br>";

}

print "<br>";

} #2

?>

</body> </html>

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

Сортировка простого массива с помощью функции sort() Функция sort() принимает один аргумент - массив - и сортирует его в алфавитном порядке, если хотя бы один из элементов является строкой, и в числовом порядке, если все элементы массива - числа. Эта функция преобразует массив и ничего не возвращает. Пример: $array=array("a","z","f","c"); sort($array); foreach($array as $value){ echo "$value<bt>"; } Простые массивы можно отсортировать и в обратном порядке, с помощью функции rsort().

Сортировка ассоциированного массива по именам с помощью функции ksort() Функция ksort() практически идентична функции asort(), с тем различием, что сортировка осуществляется не по значениями, а по ключам (в порядке возрастания). Например:

$A=array("d"=>"Zero", "c"=>"Weapon", "b"=>"Alpha", "a"=>"Processor"); ksort($A); for(Reset($A); list($k,$v)=each($A);) echo "$k=>$v "; // выводит "a=>Processor b=>Alpha c=>Weapon d=>Zero"

Функция для сортировки по ключам в обратном порядке называется krsort() и применяется точно в таком же контексте, что и ksort().

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

array_merge

Слияние массивов.

Синтаксис:

array array_merge(array arr1, array arr2 [, array ...])

Функция array_merge() призвана устранить все недостатки, присущие оператору + для слияния массивов. А именно, она сливает массивы, перечисленные в ее аргументах, в один большой массив и возвращает результат. Т.е. значени одного массива присоединяются к значениям предыдущего.

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

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

Пример использования функции array_merge():

view source

print?

1

<?php

2

$array1 = array ("color" => "red", 2, 4);

3

$array2 = array ("a", "b", "color" => "green", "shape" => "trapezoid", 4);

4

$result = array_merge ($array1, $array2);

5

print_r($result);

6

?>

Пример выведет следующее:

Array

(

[color] => green

[0] => 2

[1] => 4

[2] => a

[3] => b

[shape] => trapezoid

[4] => 4

)

Выделение части массива с помощью функции array_shift().

Функция array_shift() возвращает значение первого элемента списка и удаляет его из списка:

$A = array (3,4,5,);

array_shift($A);  //получаем $A = array(2,3,4,5);