Hash adalah kumpulan pasangan kunci/nilai .
Variabel hash di Perl dimulai dengan tanda persen (%).
Akses format elemen hash: ${key} .
Berikut adalah contoh hash sederhana:
Dengan mengeksekusi program di atas, hasil keluarannya adalah:
Ada dua cara untuk membuat hash:
$data{'google'} = 'google.com';$data{'codercto'} = 'codercto.com';$data{'taobao'} = 'taobao.com';
Elemen pertama dalam daftar adalah kunci, dan elemen kedua adalah nilai.
%data = ('google', 'google.com', 'codercto', 'codercto.com', 'taobao', 'taobao.com');
Anda juga dapat menggunakan simbol => untuk mengatur kunci/nilai:
%data = ('google'=>'google.com', 'codercto'=>'codercto.com', 'taobao'=>'taobao.com');
Contoh berikut adalah variasi dari contoh di atas, menggunakan - sebagai pengganti tanda kutip:
%data = (-google=>'google.com', -codercto=>'codercto.com', -taobao=>'taobao.com');
Dengan cara ini, spasi tidak dapat muncul pada kunci. Cara membaca elemen adalah:
$val = $data{-google}$val = $data{-codercto}
Akses format elemen hash: ${key} , contohnya sebagai berikut:
Dengan mengeksekusi program di atas, hasil keluarannya adalah:
Anda dapat mengekstrak nilai dari hash seperti halnya array.
Nilai hash diekstraksi ke dalam format sintaksis array: @{key1,key2} .
Dengan mengeksekusi program di atas, hasil keluarannya adalah:
Jajaran: 45 40
Kita dapat menggunakan fungsi kunci untuk membaca semua kunci hash. Sintaksnya adalah sebagai berikut:
kunci %HASH
Fungsi ini mengembalikan array semua kunci untuk semua hash.
Dengan mengeksekusi program di atas, hasil keluarannya adalah:
taobaogooglecodercto
Demikian pula, kita dapat menggunakan fungsi nilai untuk membaca semua nilai hash. Format sintaksnya adalah sebagai berikut:
nilai%HASH
Fungsi ini mengembalikan array semua nilai untuk semua hash.
Dengan mengeksekusi program di atas, hasil keluarannya adalah:
taobao.comcodercto.comgoogle.com
Jika Anda membaca pasangan kunci/nilai yang tidak ada dalam hash, nilai yang tidak ditentukan akan dikembalikan dan peringatan akan muncul selama eksekusi.
Untuk menghindari situasi ini, kita dapat menggunakan fungsi yang ada untuk menentukan apakah kunci tersebut ada dan membacanya ketika kunci tersebut ada:
Dengan mengeksekusi program di atas, hasil keluarannya adalah:
kunci facebook tidak ada
Pada kode di atas, kita menggunakan pernyataan IF...ELSE , yang akan kita perkenalkan secara detail pada bab berikutnya.
Ukuran hash adalah jumlah elemen. Kita bisa mendapatkan ukuran hash dengan terlebih dahulu mendapatkan semua array elemen kunci atau nilai, lalu menghitung jumlah elemen array.
Dengan mengeksekusi program di atas, hasil keluarannya adalah:
1 - Ukuran hash: 32 - Ukuran hash: 3
Menambahkan pasangan kunci/nilai dapat dilakukan melalui penugasan sederhana. Namun untuk menghapus elemen hash Anda perlu menggunakan fungsi delete :
Dengan mengeksekusi program di atas, hasil keluarannya adalah:
1 - ukuran hash: 32 - ukuran hash: 43 - ukuran hash: 3