Perl 網頁程式設計課程目錄

Perl Associate Array 關聯陣列(二)

前一節的 Perl 課程已經初步介紹了關聯陣列, 相信讀者對關聯陣列已有一定概念. 接下來這一章會討論關聯陣列的應用方法.

編寫及在瀏覽器執行以下 Perl 程式 :

#!/usr/bin/perl
print "Content-type: text/html\n\n";
#
### Set Associate Array ########
#
%family=(KO=>"Kong",
            WA=>"Wai",
            KE=>"Keung",
            YA=>"Yau");
#
#
### Print All The Keys #######
#
print keys %family;

Perl 程式解釋如下:

第 14 行 : print keys %family;

印出 %family 關聯陣列內所有的 key.

注 意 :

印出的 keys 不是順序的, 而是隨機 (random) 的.

瀏覽器應出現 :

KEWAYAKO

實 例 View Example

以上例子的 key 連在一起, 不容易閱讀. 我們可以利用先前學了的知識, 寫出更佳的程式, 如下例:

#!/usr/bin/perl
print "Content-type: text/html\n\n";
#
### Set Associate Array ########
#
%family=(KO=>"Kong",
            WA=>"Wai",
            KE=>"Keung",
            YA=>"Yau");
#
#
### Print All The Keys #######
#
   foreach $key ( keys %family){
   print "The key is : $key";
   print "<BR>";
}

注 意 :

印出的 keys 不是順序的, 而是隨機 (random) 的.

瀏覽器可能出現 :

The key is : KE
The key is : WA
The key is : YA
The key is : KO

實 例 View Example

如果希望 key 和相關的資料都一併印出, 這也是非常容易的. 如下例:

#!/usr/bin/perl
print "Content-type: text/html\n\n";
#
### Set Associate Array ########
#
%family=(KO=>"Kong",
            WA=>"Wai",
            KE=>"Keung",
            YA=>"Yau");
#
#
### Print All Keys And Values #######
#
foreach $key ( keys %family){
  print "The value for key $key is $family{$key}";
  print "<BR>";
}
#
### Print Total Elements #####
print "<P>";
print "There are ", scalar (keys %family), " elements in array";
print "<P>";

讀者應可自行理解這 Perl 例子的內容.

瀏覽器可能出現 :

The value for key KE is Keung
The value for key WA is Wai
The value for key YA is Yau
The value for key KO is Kong

There are 4 elements in array

實 例 View Example