Урок 25. Функции для работы
Урок 25. Функции для работы с хешами Функция Delete delete выражение; Удалить значение из хеша. Возвращает удаляемое значение или неопределенность, если ничего не удаляется. Удаление из массива окружения $ENV{} - изменяет окружение. Удаление из хеша связанного с базой данных - удаляет запись в базе данных. #!/usr/bin/perl #programm 19 print "Content-Type: text/html\n\n"; %c=( 'Windows 98' => '1998', 'Windows 2000' => '1999', 'Windows XP' => '2001' ); $flag=1; delete $c{'Windows XP'}; @array=%c; print " |
$i | "; }else{$flag=1; print "$i |
Функция Each
each хеш;
Возвращает 2-элементный массив. Первый элемент - ключ второй - значение следующего элемента хеша. Позволяет "просматривать" все значения хеша в определенном порядке. Сброс переменной цикла происходит только после прохождения всего массива. Код ниже выводит все пары ключ-значение из хэша:
%c=( 'Windows 98' => '1998', 'Windows 2000' => '1999', 'Windows XP' => '2001' );
while(($key,$value) = each %c){ print "$key => $value
\n"; };
Функция Exists
exists выражение;
Возвращает true, если существует указанный ключ хеша, даже если не определено его значение.
%hash=( 'Windows 98' => '1998', 'Windows 2000' => '1999', 'Windows XP' => '2001' );
if(exists($hash{"Windows 98"})){ print "Элемент найден"; }else{ print "Элемент не найден"; }
Функция Keys
keys хеш;
Возвращает массив всех ключей хеша. В скалярном контексте - количество ключей. Порядок следования ключей аналогичен порядку в each функции. Следующий код выводит все ключи хэша:
%hash=( 'Windows 98' => '1998', 'Windows 2000' => '1999', 'Windows XP' => '2001' );
foreach $k (keys %hash){ print "$k
";}
Функция Values
values хеш;
Возвращает обычный массив со всеми значениями хеша. В скалярном контексте возвращает количество значений хеша.
%hash=( 'Windows 98' => '1998', 'Windows 2000' => '1999', 'Windows XP' => '2001' );
foreach $k (values %hash){ print "$k
"; }
* * * *
[Содержание] [Вступление] [ необходимое для начала изучения] [урок 1] [урок 2] [урок 3] [урок 4] [урок 5] [урок 6] [урок 7] [урок 8] [урок 9] [урок 10] [урок 11] [урок 12] [урок 13] [урок 14] [урок 15] [урок 16] [урок 17] [урок 18] [урок 19] [урок 20] [урок 21] [урок 22] [урок 23] [урок 24] [урок 25] [урок 26] [урок 27] [урок 28] [правила хорошего тона] [приложение A] [приложение Б] [приложение В] [заключение] [благодарности]
Copyright (c) ClericICN, 2002