⊗ppPmMdNF 140 of 447 menu

Preenchendo arrays multidimensionais com números em ordem no PHP

Nos exemplos anteriores, todos os números nos subarrays eram iguais. Vamos agora fazer com que os números aumentem, assim:

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

Para isso, é necessário criar uma variável contadora especial, que irá aumentar seu valor em 1 a cada iteração do loop interno. Será esse valor do contador que registraremos no array, assim:

<?php $arr = []; $k = 1; // contador for ($i = 0; $i < 3; $i++) { for ($j = 0; $j < 3; $j++) { $arr[$i][$j] = $k; // registramos o contador $k++; // aumentamos o contador } } var_dump($arr); ?>

É possível reduzir o código, colocando a definição do contador no primeiro loop, e o k++ - no segundo:

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

Também é possível fazer o aumento do contador após a atribuição:

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

Preste atenção que, neste caso, deve ser obrigatoriamente k++, e não ++k, pois a segunda opção primeiro executará o aumento do contador, e só depois a gravação no array (ou seja, como resultado, o array começará com o dois, e não com o um).

Forme com a ajuda de dois loops aninhados o seguinte array:

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

Forme com a ajuda de dois loops aninhados o seguinte array:

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

Forme com a ajuda de três loops aninhados o seguinte array tridimensional:

<?php [[[1, 2], [3, 4]], [[5, 6], [7, 8]]] ?>
Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar