Добавление дополнительного уровня цикла foreach для нового уровня массива - PullRequest
0 голосов
/ 13 июня 2018

Мне добавили дополнительный уровень в многомерный массив, и я пытаюсь найти лучший способ включить новый цикл foreach или изменить токовые циклы, чтобы мое модальное тело правильно добавляло новый раздел для каждой страницыtype.

По сути, мой модал должен иметь заголовок для каждой компании и дисплея (комнаты), а в теле должен быть раздел для каждого типа страницы в этом дисплее / комнате.

Что у меня естьпока что хорошо до модального заголовка, но теперь я прокомментировал новый раздел, где мне нужен новый цикл для фактического отображения типа страницы и срока действия.

вот код на данный момент:

<?php

$displays = array(
"Company" => array(
  "Company One Main"=>array(
    "Displays"=>array(
      "Room One"=>array(
        "Page"=>array(
          "Type"=>"News",
          "Expiration"=>"06/12/2018"),
      ),
      "Room Two"=>array(
        "Page"=>array(
          "Type"=>"Social",
          "Expiration"=>"06/18/2018"),
      ),
      "Room Three"=>array(
        "Page"=>array(
          "Type"=>"Social",
          "Expiration"=>"06/18/2018"),
      ),
    ),
  ),
  "Company One Other"=>array(
    "Displays"=>array(
      "Room Two"=>array(
        "Page"=>array(
          "Type"=>"Social",
          "Expiration"=>"06/18/2018"),
      ),
      "Room Three"=>array(
        "Page"=>array(
          "Type"=>"Social",
          "Expiration"=>"06/18/2018"),
      ),
    ),
  ),
  "Company Two Main"=>array(
    "Displays"=>array(
      "Room One"=>array(
        "Page"=>array(
          "Type"=>"Social",
          "Expiration"=>"06/18/2018"),
      ),
      "Room Two"=>array(
        "Page"=>array(
          "Type"=>"Social",
          "Expiration"=>"06/18/2018"),
      ),
    ),
  ),
  "Company Two Other"=>array(
    "Displays"=>array(
      "Room One"=>array(
        "Page"=>array(
          "Type"=>"Social",
          "Expiration"=>"06/18/2018"),
      ),
      "Room Two"=>array(
        "Page"=>array(
          "Type"=>"Social",
          "Expiration"=>"06/18/2018"),
      ),
      "Room Three"=>array(
        "Page"=>array(
          "Type"=>"Social",
          "Expiration"=>"06/18/2018"),
      ),
    ),
  ),
),
);

?>

<div class="col-lg-4 col-md-12 col-sm-12">
<div class="page-header">
  <h2>Pages Expiring Soon</h2>
</div>
<div class="card" id="expDisplays" style="margin-bottom:20px; padding:10px;">
  <?php foreach($displays["Company"] as $area_name => $area_details): ?>
    <h6><?php echo $area_name ?><a href="#" data-toggle="modal" data-target="#expiringDisplays">Edit</a></h6>
    <!-- Modal -->
    <div class="modal fade" id="expiringDisplays" tabindex="-1" role="dialog" aria-labelledby="modalLabel" aria-hidden="true">
      <div class="modal-dialog" role="document">
        <div class="modal-content">
          <div class="modal-header">
          <?php foreach($area_details["Displays"] as $d=>$v): ?>
          <h5 class="modal-title" id="modalLabel"><?php echo  $area_name . " - " . $d?></h5>
          <button type="button" class="close" data-dismiss="modal" aria-label="Close">
            <span aria-hidden="true">&times;</span>
          </button>
          <!-- END MODAL HEADER -->
          </div>

          <!--Everything works to this point, I need a new foreach to show page types and expirations-->
          <div class="modal-body">
            <!--Need new foreach to get page types and their corresponding expiration-->
            <br>
            <h6><?php echo $v['Type'] ?></h6>
            <h6>Date/Time Expiring: <?php echo $v["Expiration"] ?></h6>
            <h6>Set New Expiration: <input data-date-format="mm/dd/yyyy" id="datepicker" name="datepicker"></h6>
            <a href="#" style="float:left;">View Display</a>
            <br>
            <hr>
            <?php endforeach; ?>
            <!-- END MODAL BODY -->
          </div>
          <div class="modal-footer">
            <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
            <button type="button" class="btn btn-primary">Save changes</button>
            <!-- END MODAL FOOTER -->
          </div>
          <!-- END MODAL CONTENT -->
        </div>
        <!-- END MODAL DIALOGUE -->
    </div>
    <!-- END MODAL -->
  </div>
  <?php //endforeach; ?>
  <?php endforeach; ?>
</div>

1 Ответ

0 голосов
/ 13 июня 2018

Вам нужно поместить новый цикл foreach внутри модального тела.Попробуйте это:

<div class="modal-body">
           <?php foreach($v as $k=>$n){ ?>
            <!--Need new foreach to get page types and their corresponding expiration-->
            <br>
            <h6><?php  echo $n['Type']; ?></h6>
            <h6>Date/Time Expiring: <?php echo $n["Expiration"] ?></h6>
            <h6>Set New Expiration: <input data-date-format="mm/dd/yyyy" id="datepicker" name="datepicker"></h6>
            <a href="#" style="float:left;">View Display</a>
            <br>
            <hr>
              <?php } endforeach; ?>
            <!-- END MODAL BODY -->
          </div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...