Как проверить, является ли это последний элемент в цикле foreach - PullRequest
0 голосов
/ 30 мая 2018

У меня есть цикл foreach, который получает имя вакансии.Рядом с каждой работой у меня есть кнопка «Завершить».Когда пользователь нажимает кнопку «Завершить», он скрывает работу от страницы.Пользователь может выполнять задания в любом порядке, поэтому он может щелкнуть первым, а не последним.

После завершения всех заданий я хочу, чтобы пользователь автоматически переходил на следующую вкладку.

У меня вопрос: как я могу проверить, было ли это последнее задание в цикле foreach.Пользователь может скрывать задания в любом порядке;так как я могу определить, если это последняя работа, чем перейти к следующей вкладке.

Вот цикл.

foreach ($array2 as $key => $value) { ?>
    <div class="panel panel-default center-block">
        <div class="panel-body">
            <div class=row>
                <div class="col-md-4">
                    <h2 style="color:orangered" class="text-center">SIP</h2>
                    <img alt="" class="center-block"style="width:20%;"src="../../css/collecting/logo.png">
                    <h2 class="text-center"><?php echo $value['name_dvp']; ?></h2>
                    <h3 class="text-center">(<?php echo $value['region_dvp']; ?>)</h3>
                    <h3 class="text-center">D<?php echo $value['id_dvp']; ?></h3>
                    <h2 style="color:orangered" class="text-center"><?php echo $value['maintenancelocation_dvp']; ?></h2>
                </div>


                <div class="col-md-2">
                    <img alt="" class=" center-block developerlocationselection" style="width:35%; margin-top:10%;" src="../../css/collecting/route-select.png">

                </div>
            </div>
        </div>
    </div>
    <?php

}

Javascript

<script>
  $(document).ready(function () {
    $(".developerlocationselection").click( function () {
        alert(2);
    });
  });
</script>

Ответы [ 2 ]

0 голосов
/ 30 мая 2018

Попробуйте это:

foreach($array as $key => $value) {

    if ($value === end($array)){
        echo 'Last';
    }

}
0 голосов
/ 30 мая 2018

Я думаю, что лучшим вариантом будет следовать тому, что сказал @musefan.В противном случае вы можете попробовать что-то вроде этого:

$array_length = count($array2);
$current_index = 0;

foreach ($array2 as $key => $value) {

   $current_index++;

   if(current_index == $array_length){
      echo 'I found the last job!';
   }

   //Do your stuff
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...