Птици, Набла, 19

Но първо, нека се споразумеем за терминологията. така, масив ? променлива, която съхранява няколко стойности наведнъж. Можете да стигнете до определена стойност, като я посочите индекс ? задължително цяло число (евентуално изчислено като резултат). Като правило, първият елемент на масив има индекс 0 (а не 1), което означава, че последният елемент има индекс, който е с 1 по-малък от размера на масива. Хеш (преведено като "hodgepodge") ? почти същото като масив, но индексът не е число, а произволен низ. Индексите на хеш се наричат ключове, и съответните стойности на елементите ? стойности. Както масивът не може да има два елемента с един и същ индекс, не е възможно две стойности с един и същ ключ да съществуват в хеш. Скалар По-нататък ще се позова на променлива, която не е нито хеш, нито масив (например низ или число).

Както знаете, в PHP всички имена на променливи трябва да бъдат предшествани от символа $. Вероятно се досещате, че това, наред с други неща, позволява на интерпретатора да замества стойностите на такива променливи директно в низове:

За разлика от Perl, правилото за знак долар се прилага тук за абсолютно всички променливи, били те масиви, хешове или прости скалари. Нека започнем с масиви. Много ли е лесен достъп до елемент от масив ? например по този начин:

Разбира се, допустими са и следните конструкции:

За да вмъкнете стойността на елемент от масив в низ, можете да напишете (по-долу говорим за PHP версия 4):

Въпреки това, в по-сложни случаи (когато например индексът е $ i * $ i), ще трябва да използвате различен синтаксис:

Този синтаксис е универсален: можете да използвате всичко в квадратните скоби на масив, например:

Като елемент масивът може да съдържа не само скалар, но и друг масив. В този случай той се нарича „многомерен масив“ или матрица, но е по-добре да се разглежда не като правоъгълна таблица, а като „масив от масиви“ (тъй като подмасивите могат да имат различни размери, така че съществуването на "триъгълен масив" е напълно възможно). Позоваването на елементите на двумерните масиви се извършва по същия начин:

Моля, обърнете внимание, че не можете да пишете:

Просто няма да работи. Така че не се изненадвайте твърде много, когато вместо очаквания резултат програмата отпечатва нещо като Array [2], без дори да дава предупреждение.

Сега за хешовете в PHP. Най-общо казано, достъпът до тях не е коренно различен от достъпа до масив ? индексите се заместват по същия начин (сега те се наричат ​​ключове) и дори по същия начин се вмъква стойност в низ. Ето няколко примера: