PHP ja Ruby on
PHP sisseehitatud massiivi tüüp on tegelikkuses assotsiatiivne massiiv. Isegi numbriliste indeksite kasutamisel salvestab PHP selle sisemiselt assotsiatiivse massiivina. Seetõttu võib ühel PHP-s olla järjestikuseid numbriliselt indekseeritud massiive. Klahvid peavad olema skalaarväärtused (string, ujukoma arv või täisarv), samas kui väärtused võivad olla suvalisi tüüpe, sealhulgas muud massiivid ja objektid. Massiivid on heterogeensed; ühel massiivil võib olla erinevat tüüpi võtmeid. PHP assotsiatiivseid massiive saab kasutada puude, loendite, virnade, järjekordade ja muude tavaliste andmestruktuuride, mis pole PHP-sse sisse ehitatud, tähistamiseks.
PHP-s saab assotsiatiivse massiivi moodustada kahel viisil:
$ telefoniraamat = array (); $ telefoniraamat ['Sally Smart'] = '555-9999'; $ telefoniraamat ['John Doe'] = '555-1212'; $ telefoniraamat ['J. Juhuslik häkker '] =' 555-1337 '; // või $ telefoniraamat = array ('Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Random Hacker' => '555-1337',); // või $ telefoniraamat ['kontaktid'] ['Sally Smart'] ['number'] = '555-9999'; $ telefoniraamat ['kontaktid'] ['John Doe'] ['number'] = '555-1212'; $ telefoniraamat ['kontaktid'] ['J. Juhuslik häkker '] [' number '] =' 555-1337 ';
Samuti saate PHP-s läbi viia assotsiatiivse massiivi järgmiselt:
foreach ($ telefoniraamat kui $ nimi => $ number) echo "Number $ nime jaoks: $ number \ n";
// Viimase massiivi näites kasutatakse seda nagu seda juttu ($ telefoniraamat ['kontaktid'] kui $ name => $ num) echo "Nimi: $ name"; kaja "arv: $ num ['number']";
PHP-l on massiivides töötamiseks ulatuslik funktsioonide komplekt.
Ruby's nimetatakse assotsieerunud massiivi Hash ja seda kasutatakse järgmiselt:
telefoniraamat = 'Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Juhuslik häkker '=>' 553-1337 '
telefoniraamat ['John Doe']
toodab '555-1212'
Räsil korramiseks kasutage järgmist:
telefoniraamat.each | võti, väärtus | paneb klahvi + "=>" + väärtus
Lisaks võidakse iga klahvi näidata eraldi:
telefoniraamat.each_key | võti | paneb võtme
Iga väärtust võib näidata ka:
telefoniraamat.each_value | väärtus | paneb väärtust