PHP ir Ruby yra
Integruotas PHP masyvo tipas iš tikrųjų yra asociatyvusis masyvas. Netgi naudodamas skaitmeninius indeksus, PHP jį saugo kaip asociacinį masyvą. Štai kodėl vienas PHP gali turėti nenuoseklius skaitmeninius indeksus. Raktai turi būti skalinės vertės (eilutė, slankiojo kablelio skaičius arba sveikasis skaičius), o reikšmės gali būti savavališkos, įskaitant kitus masyvus ir objektus. Masyvai yra nevienalyčiai; viename masyve gali būti įvairių tipų raktai. Asociaciniai PHP masyvai gali būti naudojami vaizduoti medžius, sąrašus, krūvus, eiles ir kitas įprastas duomenų struktūras, neįdėtas į PHP.
PHP programoje asociacinis masyvas gali būti suformuotas vienu iš dviejų būdų:
$ telefonų knyga = masyvas (); $ telefonų knygelė ['Sally Smart'] = '555-9999'; $ telefonų knygelė ['John Doe'] = '555-1212'; $ telefonų knygą ['J. Atsitiktinis hakeris '] =' 555-1337 '; // arba $ telefonų knyga = masyvas ('Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Random Hacker' => '555-1337',); // arba $ telefonų knygelė ['kontaktai'] ['Sally Smart'] ['number'] = '555-9999'; $ telefonų knygelė ['kontaktai'] ['John Doe'] ['number'] = '555-1212'; $ telefonų knygelė ['kontaktai'] ['J. Atsitiktinis hakeris '] [' skaičius '] =' 555-1337 ';
Taip pat galite peržvelgti asociatyvinį masyvą PHP:
foreach ($ telefonų knygelė kaip $ name => $ number) echo "$ name vardas: $ number \ n";
// Paskutiniam masyvo pavyzdyje jis naudojamas kaip šis patarimas ($ telefonų knygelė ['kontaktai'] kaip $ name => $ num) echo "Vardas: $ name"; echo "skaičius: $ num ['number']";
PHP turi platų funkcijų rinkinį darbui su masyvais.
„Ruby“ asocijuotasis masyvas vadinamas Hash ir naudojamas taip:
telefonų knygelė = 'Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Atsitiktinis hakeris '=>' 553-1337 '
telefonų knygelė ['John Doe']
gamina '555-1212'
Norėdami pakartoti maišos vietą, naudokite šiuos dalykus:
telefonų knyga.aš | raktas, vertė | pateikia klavišą + "=>" + reikšmė
Be to, kiekvienas raktas gali būti rodomas atskirai:
telefonų knygelė. raktas | raktas | įdeda raktą
Kiekviena vertė taip pat gali būti rodoma:
phonebook.each_value | vertė | kelia vertę