Постоје две интересантне могућности у ПХП матрицама: фореацх мотион и последњи елемент. То јест, у правцу напред и назад. Језик даје свакој варијабли право да промени свој тип по свом нахођењу, а елемент поља је такође променљива.
Ако узмемо у обзир да постоји показивач на активни елемент у низу и да се може контролисати како желите, онда ако програмер пропусти, програм неће рачунати на чуда, а његово понашање ће бити "независно".
Низови су одувијек били популаран концепт у програмирању, а недавно су стекли ново значење и синтактичке облике. ПХП фореацх петља и појам "последњег елемента" су еквивалентни у неком смислу и разликују се само у правцу кретања:
У оба случаја, можете створити низове, како се испоставило, али увијек можете видјети све. Оба случаја отварају могућност да своју сопствену семантику унесу у ПХП синтаксу.
У првом случају, циклус званично посматра све елементе редоследом њиховог појављивања у низу или редоследом који је настао након манипулације њиме. У другом случају, процес је исти, али долази од репа низа до његовог почетка.
Ако се појави проблем, ПХП проглашава грешку елемента. Ако се као параметар не користи низ, у првом случају имамо ПХП поруку: упозорење неважећи аргумент достављен за фореацх, у другом - грешка нивоа Е_ВАРНИНГ, односно, “ништа страшно, али проблеми ће услиједити”.
Појава асоцијативних низова означила је баналну промену ставова према њима. Ако програмер не контролише ситуацију, проблеми се не могу избјећи.
Многи задаци или делови алгоритма прописују да се креирају уређени низови, а онда кључеви увек иду у ред.
Када можете да избришете неки елемент, а кључеви који га следе, не померају се напред, поље се не разликује много од асоцијативног. Да ли је програмер имао руку у томе како да назове овај или онај елемент низа.
Уобичајена итерација над елементима у за () петљи је занимљива и има смисла када кључеви иду узастопно. Сваки низ увек има кључ у реду. Када се елемент избрише, формира се празан простор и појављује се грешка у петљи фор ().
Када претражујете кроз низ користећи фореацх () или арраи_поп (), никада неће бити проблема, али само у првом случају ће поље остати, у другом ће нестати.
Фореацх петља у ПХП-у има познати облик. Можете одредити претрагу као што је: ($ аПасс као $ цЛине), или можете одредити кључ: ($ аПасс као $ цКеи => $ цЛине).
Лооп кроз арраи_поп ($ аПасс) - из поља стап импровизације прошлости, иако релевантан и занимљив у садашњости. Ово уопште није петља, већ једноставно излаз последњег елемента низа, у којем је уклоњен из низа.
Када почне ПХП наредба фореацх, интерни показивач поља се увијек поставља на свој први елемент. Промена показивача унутар петље може довести до чуда.
Важно је да променљива $ цЛине не означава елемент матрице $ аПасс, али садржи његову вредност, тако да ако морате да промените елемент низа, морате да ставите знак & испред њега. У овом случају, $ цЛине ће бити референца на елемент поља, а не на његову вредност.
Која је грешка вреднија: фатална или прескочена је као зачин, по укусу инвеститора, узимајући у обзир адекватан одговор купца. Ако је ставка уклоњена из низа, тада ће приметити само петља фор. ПХП фореацх петља и ПХП арраи_поп су овде апсолутно лојални.
Ако је елемент погрешног типа, бит ће уочљив на исти начин као у главном дијелу програма.
Ако параметар фореацх не укључује низ или објекат, биће аргумент Инвалид ..., иако је варијанта са арраи_поп обично нестварна. Али када се то догоди свеједно, онда се ништа неће десити осим НУЛЛ-а.
ПХП пружа могућност третирања објеката као поља. Шта је смисао овога тешко рећи, али ово је доступно. Низови могу да садрже вредности било ког типа и да га мењају током извршавања програма. Наравно, елемент низа може бити други низ или објекат. Ниво гнезда је ограничен здравим разумом.
Оператори и језички конструкти немају ништа са нивоом рекурзије или гнезда. Ово је озбиљно заостајање у синтакси контролних структура од синтаксе описа података. Програмери су навикли на такве појаве као што су ПХП поља, фореацх, арраи_поп, тако да је згодно радити с њима.
Изгледи да ће се контролне структуре промијенити (чак иу далекој будућности) још нису предвиђене.
Морамо одати признање чињеници да долазак пара фореацх / арраи_поп није био дуг, али ово је само пола приче. Све у свему, фор () {}, вхиле () {} и до {} вхиле () петље, време је да се правилно контролише празнине у низовима и реши проблем рекурзије када је елемент низ.
Међутим, свесност девелопера још увек памти непоколебљиву доктрину: низ је скуп елемената, где је елемент низа други ентитет који треба да се обради у складу са тим.
Проблем у овом случају не треба решавати у догледној будућности, чак и ако се узме у обзир стопа раста развоја информационих технологија. Због тога што је потребно бити задовољан са оним што је.
Нај примитивнији случај када су елементи низа бројеви, низови, други елементи константног састава и ознака.
На пример, цифре бинарног система рачунања. Слично:
Рећи да ће најједноставније бити низ мјесеци, али само под одређеним увјетима, јер у већини случајева требат ће вам дигитални приказ мјесеца, три слова, руски, кинески, пуни или неки други.
Дефинитивно најједноставнији ће бити низ слова абецеде. У најједноставнијем низу, можете дефинирати све што се обично назива константама и увијек за проблем који се рјешава.
Ако одустанете од било које друге опције за врсту елемента, поред објекта и најједноставнијег низа, онда ће све испасти савршено дивно чак иу рукама модерних управљачких структура језика, које су задржале своју суштину од давних времена.
Познато је да објекат комбинује податке и методе, меморију и акцију. Општа пракса објектно оријентисаног програмирања, коју многи разумеју, је врста апстрактног објекта који нема ништа, али све је само планирано.
Дивно стање ствари, развијајући ланац наследника из апстрактног објекта, добијамо прилику да формирамо низове истог типа података - апстрактних објеката. Шта ће тачно бити у сваком конкретном случају је ствар технике и, пошто је померила бригу о примени семантике у руке сваког специфичног потомка према његовој суштини, добијамо оно што желимо.