Для тех кто переходит изучать с PHP на Perl

В PHP мы знем что массивы бывают числовые, и строковые.

1. В массивах первого типа элемент определяется индексом в последовательности. Такие массивы называются простыми массивами.
<? 
// Простой  массив с цифровыми ключами
$names[0]="Апельсин";
$names[1]="Банан";
$names[2]="Груша";
$names[3]="Помидор";
// Здесь: names - имя массива, а 0, 1, 2, 3 - индексы массива
foreach ($names as $k=>$v){
	echo "Ключь: $k | Значение: $v\n";
}
?>


2. Массивы второго типа имеют ассоциативную природу, и для обращения к элементам используются ключи, логически связанные со значениями. Такие массивы называют ассоциативными массивами.
<? // Ассоциативный массив
$names["Иванов"]="Иван";
$names["Сидоров"]="Николай";
$names["Петров"]="Петр";
// В данном примере: фамилии - ключи ассоциативного массива
// , а имена - элементы массива names

foreach ($names as $v){
	echo $v."\n";
}
?>


В перле же ассоциативные массивы выглядят иначе. При присваивании элемента используются фигурные {} скобки а в PHP квадратные []

#!perl -w
# Ассоциативный массив
#используются <b>фигурные </b><b>{}</b> скобки 
%ages = ("Andy", 22,
         "Mike", 23,
         "Dr. Jones", 27,
         "Mr. Smyth", 21,
         "Katrin", "who knows");
# В данном примере: фамилии - ключи ассоциативного массива
# , а имена - элементы массива ages

foreach $person (keys %ages)
{
   print "Ключь: $person Значение: $ages{$person}\n";
}

# Просто значение
foreach $age (values %ages)
{
   print "Значение: $age\n";
}


#!perl -w

# Ассоциативный массив
#используются <b>фигурные </b><b>{}</b> скобки 
$names{"Иванов"}="Иван";
$names{"Сидоров"}="Николай";
$names{"Петров"}="Петр";
# В данном примере: фамилии - ключи ассоциативного массива
# , а имена - элементы массива names

foreach $person (keys %names)
{
   print "Ключь: $person Значение: $names{$person}\n";
}
Читать дальше