KompjuteraTeknologjia e informacionit

Loops efektive foreach: PHP dhe vargjet e rregullta

Informacioni i paraqitur në vargjet mund të ndryshojë në llojin e vlerave dhe në madhësinë e tyre dhe numri i elementeve nuk mund të përcaktohet paraprakisht. Programimi modern, veçanërisht në versionin e shpërndarë, lejon krijimin e strukturave të të dhënave komplekse, përmbajtja dhe pronat e të cilave mund të përcaktohen dinamikisht në një pikë të pacaktuar në kohë si rezultat i veprimeve ose ngjarjeve të ndryshme në një sekuencë të ndryshme.

Jo gjithmonë në fazën e zhvillimit, ju mund të parashikoni procesin e operimit, të parashikoni të gjitha opsionet e mundshme për prezantimin dhe përdorimin e informacionit, dinamikën e paraqitjes dhe përdorimit të tyre.

Sintaksa e ciklit sipas përmbajtjes

Formulimi i sintaksës së foreach, PHP ka ofruar dy opsione për qasje në elemente. Të dyja nuk varen nga as lloji i tipit, as nga lloji i vlerës dhe mund të emulohen nga loopi normal. Supozohet që të konsiderohen grupet si një koleksion elementesh, numri i të cilave nuk është përcaktuar fillimisht. Grupi mund të formohet në fluturim, me ose pa çelësa. Në një grup, një element mund të fshihet, çelësat mund të jenë asociativë dhe formuar nga default.

Foreach ($ aArrayName si $ xValue) {trupi i lakut}

Ky dizajn detyron loop foreach PHP të kalojë nëpër të gjitha elementet në një rresht. Në trupin e lak, variabli $ xValue do të marrë në vijim të gjitha vlerat e array $ aArrayName në rendin në të cilin janë shtuar. Vlerat kryesore të elementit nuk do të jenë të disponueshme.

Foreach ($ aArrayName si $ xKey => $ xValue) {trupi i lakut}

Edhe këtu, gjatë ekzekutimit të konstruksionit foreach, PHP do të skanojë tërë përmbajtjen e grupit, por në trupin e lak, vlerat korresponduese do të jenë në çifte, si $ xValue dhe $ xKey, kyçi i elementit.

Sekuenca e elementeve

Brenda PHP foreach PHP do të ofrojë përmbajtjen në rendin në të cilin elementët janë shtuar, por nëse ka pasur shtesa / fshirje të shumta gjatë brezit të grupeve, dhe diçka u shtua me çelësat dhe diçka pa, atëherë është më mirë të punosh me grupin jo me Pozicionet e një sekuence elementësh, por bazuar në përmbajtjen e tyre ose në çelësat.

Për shkak të arsyeve të ndryshme objektive, sekuenca brenda grupit nuk mund të vërehet dhe / ose nuk mund të ketë shumë rëndësi, por nuk duhet të orientohet në asnjë rast. Në probleme të thjeshta, në grupe të parëndësishme të të dhënave, nuk ka probleme dhe algoritmi mund të sintonizohet në përpunimin vijues, por kur procesi i krijimit / redaktimit të një koleksioni ndikohet nga shumë faktorë, duhet të përqendrohet në përmbajtjen.

Elemente moderne "të drejta"

Nga pikëpamja e konceptit ekzistues vetjak, pa marrë parasysh edhe ngjashmërinë e pakushtëzuar të gjuhëve, struktura e PHP foreach duhet të projektohet në mënyrë të pavarur duke marrë parasysh një detyrë reale konkrete.

Praktika, kur ka një të dhënë, dhe kjo ka një indeks në koleksionin e përgjithshëm të tij të ngjashëm sipas një kriteri të caktuar, ishte dje .

Indeksi u bë çelësi dhe grupi mori formën e një grupi asociativ. Kjo është, çelësi ka humbur unike e tij konsistente (zakonisht ishte vijues: 0, 1, 2, ... n) dhe u bë një vlerë gjithashtu, por një vlerë e thjeshtë (domethënë një çelës) e lidhur me vlerën reale (domethënë përmbajtjen e elementit). Është sot, është e drejtë, por jo e përsosur .

Kjo është arsyeja pse loop foreach është konsideruar nga PHP si një alternativë për loop zakonshme, të orientuara në vargje të rregullta. Kjo është e para dhe më e rëndësishmja, dhe kjo është shumë e rëndësishme, sepse kjo nënkupton korrektësinë reale të elementëve të grupit , si dhe çelësat e tyre!

Listat korrekte të elementeve të rregullta

Së pari ka pasur një element, pastaj dy elemente ... kështu që ekzistonte një grup elementesh dhe një lak përgjatë një koleksioni të këtyre:

Për ($ i = 0; $ i

Trupi përpunues i secilit $ aArrayName [$ i]

}

Pastaj elementi në vend të paefektshëm 0, 1, 2, ... n kishte emrin e vet - çelësi dhe pastaj vargjet bëheshin asociative, dhe pastaj nevojitet një loop foreach - një "loop for each":

Foreach ($ aArrayName si $ xKey => $ xValue) {

Trupi përpunues i çdo $ aArrayName [$ xKey] ose $ xValue që është i njëjtë

}

Tani është koha për të ardhur në grup me elementet e duhura , domethënë ato që janë më vete. Ata vetë e dinë indeksin e tyre, përmbajtjen e tyre, vendin e tyre në rend, janë të prirur për të treguar zgjedhjen e tyre të sekuencës dhe t'i delegojnë të gjitha këto mundësi në grupin aktual që i përmban ato.

Këto vargje të rregullta do të trajtohen nga vetë ata. Një nevojë e veçantë për përdorimin e cikleve të zakonshme dhe cikleve për secilin nuk do të jetë thjeshtë. Formalisht, sintaksa dhe semantika tashmë e lejojnë, pyetja është vetëm inerci e vetëdijes së zhvilluesit.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 sq.atomiyme.com. Theme powered by WordPress.