Insæt value i multi array

Her kan du få hjælp og stille spørgsmål til PHP!
Besvar
Krabsen
Begynder
Indlæg:10
Tilmeldt:29. okt 2012, 22:36
Insæt value i multi array

Indlæg af Krabsen » 17. okt 2016, 09:31

Jeg skal lave en multi array der ser sådan her ud:

Kode: Vælg alt

array(1) {
  ["Test"]=>
  array(1) {
    [0]=>
    array(3) {
      ["opgang1"]=>
      array(2) {
        ["etage2"]=>
        array(1) {
          ["varm"]=>
          array(4) {
            ["x1"]=>
            int(50)
            ["x2"]=>
            int(150)
            ["y1"]=>
            int(0)
            ["y2"]=>
            int(0)
          }
        }
        ["etage1"]=>
        array(1) {
          ["varm"]=>
          array(4) {
            ["x1"]=>
            int(100)
            ["x2"]=>
            int(300)
            ["y1"]=>
            int(0)
            ["y2"]=>
            int(0)
          }
        }
      }
      ["opgang2"]=>
      array(2) {
        ["etage2"]=>
        array(1) {
          ["varm"]=>
          array(4) {
            ["x1"]=>
            int(50)
            ["x2"]=>
            int(150)
            ["y1"]=>
            int(0)
            ["y2"]=>
            int(0)
          }
        }
        ["etage1"]=>
        array(1) {
          ["varm"]=>
          array(4) {
            ["x1"]=>
            int(100)
            ["x2"]=>
            int(300)
            ["y1"]=>
            int(0)
            ["y2"]=>
            int(0)
          }
        }
      }
      ["opgang3"]=>
      array(2) {
        ["etage2"]=>
        array(1) {
          ["varm"]=>
          array(4) {
            ["x1"]=>
            int(50)
            ["x2"]=>
            int(150)
            ["y1"]=>
            int(0)
            ["y2"]=>
            int(0)
          }
        }
        ["etage1"]=>
        array(1) {
          ["varm"]=>
          array(4) {
            ["x1"]=>
            int(100)
            ["x2"]=>
            int(300)
            ["y1"]=>
            int(0)
            ["y2"]=>
            int(0)
          }
        }
      }
    }
  }
}

mit problem er at jeg skal have y value til at øge for hver "opgang", lige som x value bliver øget for hver "etage".

jeg har lavet denne kode indtil vider:

Kode: Vælg alt

$projektNavn = "Test";
$opgange = 3;
$etage = 2;
$temp = array();

$dele = array(
    'varm' => array('x1' => 0, 'x2' => 0, 'y1' => 0, 'y2' => 0)
//    'kold' => array('x1' => '200', 'x2' => '200', 'y1' => '200', 'y2' => '200')
);

for ($i = $etage; $i >= 1; $i--) {

    $varmeX1 = $dele['varm']['x1'] + 50;
    $varmeX2 = $dele['varm']['x2'] + 150;
    $dele['varm']['x1'] = $varmeX1;
    $dele['varm']['x2'] = $varmeX2;

    $etag['etage' . $i] = $dele;
}

for ($j = 1; $j <= $opgange; $j++) {

    $varmeY1 = $dele['varm']['y1'] + 100;
    $varmeY2 = $dele['varm']['y2'] + 200;
    $dele['varm']['y1'] = $varmeY1;
    $dele['varm']['y2'] = $varmeY2;

//        $temp = $dele;

    $opgang['opgang' . $j] = $etag;
}

$projekt = array(
    $projektNavn => array(
        $opgang
    )
);

echo "<pre>";
var_dump($projekt);
echo "</pre><br>";
Jeg ved godt at $varmeY1 og$varmeY2 ikke bliver added $etag og derfor er 0, jeg har prøvet alt jeg kan finde på uden held, så håber i kan hjælpe :)

Besvar