ТЪРСЕНЕ НА САЙТА

Ефективни линии на foreach: PHP и редовни масиви

Информацията, представена в масиви, може да бъдеразлични стойности на вида и размера им и редица елементи не винаги могат да бъдат определени по-рано. Modern програмиране, особено в разпределени изпълнение, това позволява създаването на сложна структура данни, съдържание и свойства могат да се определят динамично в неопределено време, в резултат на различни действия или събития в различна последователност.

foreach php

Не винаги на етапа на разработка, можете да предскажете операционния процес, да осигурите всички възможни възможности за представяне и използване на информацията, динамиката на външния вид и употребата им.

Синтаксис на цикъла по съдържание

Формулирайки синтаксиса на foreach, PHP предложи двеопция за достъп до елементи. И двата не зависят нито от типа ключ, нито от типа стойност и могат да бъдат емулирани от нормалната линия. Предлага се масивът да се разглежда като съвкупност от елементи, чийто брой първоначално не е дефиниран. Могат да се оформят масив, с или без клавиши. В масив елементът може да бъде изтрит, клавишите могат да бъдат асоциативни и да се формират по подразбиране.

foreach ($ aArrayName като $ xValue) {body of the loop}

Такава конструкция изисква предварителен цикълпреминете през всички елементи в един ред. В тялото на цикъла променливата $ xValue ще поеме последователно всички стойности на масива $ aArrayName в реда, в който са добавени. Стойностите на ключовите елементи няма да са налице.

foreach ($ aArrayName като $ xKey => $ xValue) {body of the loop}

И тук, изпълнявайки конструкцията на foreach, PHPще сканира цялото съдържание на масива, но в тялото на цикъла ще бъдат взети съответните стойности като променливата $ xValue и променливата $ xKey - ключът на елемента.

foreach php цикъл

Последователност на елементите

Вътре в PHP foreach ще предложи съдържание вВ реда, в който елементите бяха добавени, но ако имаше множество добавки / изтривания по време на образуването на масива и нещо беше добавено с ключовете и нещо не, тогава най-добре е да работите с масива не от последователността на елементи елементи, а въз основа на тяхното съдържание или ключовете.

php foreach масив

Поради различни обективни причинипоследователността в масива може да не се спазва и / или може да не е от особено значение, но не трябва да бъде ориентирана по никакъв начин. В прости задачи за тривиални набори от данни, не е проблем, а алгоритъмът може да се настрои да последователна обработка, но при създаване / редактиране на процеса на масив се влияе от много фактори, трябва да се съсредоточи върху съдържанието.

Модерни "правилни" елементи

От гледна точка на съществуващата собствена концепция, без дори да се вземат под внимание безусловните сходни езици, PHP foreach масивът трябва да бъде проектиран независимо, като се вземе предвид истинската конкретна задача.

Практикувайте, когато има дадено, и това има индекс в общата му колекция, подобен според определен критерий - това беше вчера.

Индексът стана ключът и масивът се оформиасоциативен масив. Тоест, ключът е загубил последователната си уникалност (обикновено е последователен: 0, 1, 2, ... n) и се е превърнал в стойност, а е проста стойност (т.е. ключ), свързана с реалната стойност (тоест съдържанието на елемента). Това е днес, е правилно, но не е съвършено.

Ето защо фокусът на foreach се разглежда от PHP като алтернатива на обикновена линия, която е ориентирана към редовни масиви. Това е преди всичко и това е много важно, защото това предполага истинска коректност на масивните елементи, както и техните ключове!

Правилни масиви от редовни елементи

Първо имаше един елемент, а след това два елемента ... така че имаше набор от елементи и цикъл по редица от тях:

за ($ i = 0; $ i <брой ($ aArrayName); $ i ++) {

обработващото тяло на всеки $ aArrayName [$ i]

}

Тогава елементът, вместо лицевият 0, 1, 2, ... n имаше своето име - ключът и след това масивите станаха асоциативни, а след това беше необходим foreach loop - "loop for each": "

foreach ($ aArrayName като $ xKey => $ xValue) {

обработващото тяло на всеки $ aArrayName [$ xKey] или $ xValue, което е същото

}

Сега е време да дойдете в масива с правилните елементи, т.е. тези, които сами по себе си. Самите те знаят своя индекс, тяхното съдържание, мястото им в последователност, са склонни да упражняват своя избор на последователност и да делегират всички тези възможности на действителния масив, който ги съдържа.

Такива правилни масиви ще бъдат обработенисами. Специална необходимост от използване на обикновени цикли и цикли за всеки от тях просто няма да бъде. Формално, синтаксиса и семантиката вече позволяват, въпросът е само инерцията на съзнанието на разработчика.

</ p>
  • Оценка: