PHP ve Ruby
PHP'nin yerleşik dizi türü gerçekte ilişkilendirilebilir bir dizidir. Sayısal dizinler kullanırken bile, PHP dahili olarak ilişkilendirilebilir bir dizi olarak saklar. Bu yüzden PHP'de biri ardışık olmayan sayısal olarak dizinlenmiş dizilere sahip olabilir. Anahtarlar skaler değerler (dize, kayan nokta sayısı veya tamsayı) olmalıdır, değerler diğer diziler ve nesneler de dahil olmak üzere rastgele tiplerde olabilir. Diziler heterojendir; tek bir dizi farklı türde tuşlara sahip olabilir. PHP'nin ilişkilendirilebilir dizileri, PHP'de yerleşik olmayan ağaçları, listeleri, yığınları, kuyrukları ve diğer yaygın veri yapılarını temsil etmek için kullanılabilir.
PHP'de, ilişkilendirilebilir bir dizi iki yoldan biriyle oluşturulabilir:
$ phonebook = dizi (); $ telefon defteri ['Sally Smart'] = '555-9999'; $ telefon defteri ['John Doe'] = '555-1212'; $ Telefon defteri [ 'J. Rastgele Hacker '] =' 555-1337 '; // veya $ telefon defteri = dizi ('Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Random Hacker' => '555-1337',); // veya $ telefon defteri ['kişiler'] ['Sally Smart'] ['sayı'] = '555-9999'; $ phonebook ['kişiler'] ['John Doe'] ['sayı'] = '555-1212'; $ Telefon defteri [ 'iletişim'] [ 'J. Rastgele Hacker '] [' sayı '] =' 555-1337 ';
Ayrıca PHP'de aşağıdaki gibi ilişkilendirilebilir bir dizi arasında geçiş yapabilirsiniz:
foreach ($ $ => $ sayı olarak $ telefon defteri) echo "$ name için sayı: $ number \ n";
// Son dizi örneği için bu foreach ($ phonebook ['contacts'] gibi $ name => $ num olarak kullanılır echo "Name: $ name"; echo "Sayı: $ num ['number']";
PHP dizilerde çalışmak için kapsamlı işlevlere sahiptir.
Ruby'de ilişkilendirilmiş bir diziye Hash adı verilir ve aşağıdaki gibi kullanılır:
telefon defteri = 'Sally Smart' => '555-9999', 'John Doe' => '555-1212', 'J. Rastgele Hacker '=>' 553-1337 '
telefon defteri ['John Doe']
üretir '555-1212'
Karma üzerinde yineleme yapmak için aşağıdakine benzer bir şey kullanın:
phonebook.each | anahtar, değer | + "=>" + değeri tuşuna koyar
Ayrıca, her tuş ayrı ayrı gösterilebilir:
phonebook.each_key | anahtar | anahtarı koyar
Her değer ayrıca gösterilebilir:
phonebook.each_value | değer | değeri koyar