⊗ppPmMdNF 140 of 447 menu

Fyller flerdimensionella arrayer med tal i ordning i PHP

I de tidigare exemplen var alla tal i underarrayerna desamma. Låt oss nu göra så att talen ökar, så här:

<?php [[1, 2, 3], [4, 5, 6], [7, 8, 9]] ?>

För att göra detta behöver du skapa en speciell räknarvariabel, som ökar sitt värde med 1 vid varje iteration av den inre loopen. Det är detta räknarvärde som vi kommer att skriva in i arrayen, så här:

<?php $arr = []; $k = 1; // räknare for ($i = 0; $i < 3; $i++) { for ($j = 0; $j < 3; $j++) { $arr[$i][$j] = $k; // skriver räknaren $k++; // ökar räknaren } } var_dump($arr); ?>

Du kan minska koden genom att flytta definitionen av räknaren till den första loopen, och k++ - till den andra:

<?php $arr = []; for ($i = 0, $k = 1; $i < 3; $i++) { for ($j = 0; $j < 3; $j++, $k++) { $arr[$i][$j] = $k; } } var_dump($arr); ?>

Du kan också göra ökningen av räknaren efter tilldelningen:

<?php $arr = []; for ($i = 0, $k = 1; $i < 3; $i++) { for ($j = 0; $j < 3; $j++) { $arr[$i][$j] = $k++; } } var_dump($arr); ?>

Observera att i det här fallet måste det vara absolut k++, och inte ++k, eftersom det andra alternativet först kommer att öka räknaren och sedan skriva till arrayen (det vill säga, som ett resultat kommer arrayen att börja med tvåan, och inte med ettan).

Skapa med hjälp av två kapslade loopar följande array:

<?php [[1, 2], [3, 4], [5, 6], [7, 8]] ?>

Skapa med hjälp av två kapslade loopar följande array:

<?php [[2, 4, 6], [8, 10, 12], [14, 16, 18], [20, 22, 24]] ?>

Skapa med hjälp av tre kapslade loopar följande tredimensionella array:

<?php [[[1, 2], [3, 4]], [[5, 6], [7, 8]]] ?>
Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa