| 
 Урок 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 " \n";
foreach $i(@array){
if($flag==1){$flag=0;
print "| $i | ";
}else{$flag=1;
print "$i |  \n"
}}
print " ";
Функция 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] 
[приложение Б] 
[приложение В] 
[заключение] 
[благодарности] 
 
  |