У меня есть ассоциативный массив или объект
пример:
Как я могу зациклить массив, чтобы отобразить карусель для вывода в такой HTML-вывод
<div id="Carousel" class="carousel slide">
<!-- Carousel items -->
<div class="carousel-inner">
<div class="item active">
<div class="row">
<div class="col-md-2"><a href="#" class="thumbnail" id="carousel-selector-0"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img1.jpg" alt="Image" style="max-width:100%;"></a></div>
<div class="col-md-2"><a href="#" class="thumbnail" id="carousel-selector-1"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img2.jpg" alt="Image" style="max-width:100%;"></a></div>
<div class="col-md-2"><a href="#" class="thumbnail" id="carousel-selector-2"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img3.jpg" alt="Image" style="max-width:100%;"></a></div>
<div class="col-md-2"><a href="#" class="thumbnail" id="carousel-selector-3"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img4.jpg" alt="Image" style="max-width:100%;"></a></div>
<div class="col-md-2"><a href="#" class="thumbnail" id="carousel-selector-4"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img5.jpg" alt="Image" style="max-width:100%;"></a></div>
<div class="col-md-2"><a href="#" class="thumbnail" id="carousel-selector-5"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img6.jpg" alt="Image" style="max-width:100%;"></a></div>
</div><!--.row-->
</div><!--.item-->
<div class="item">
<div class="row">
<div class="col-md-2"><a href="#" class="thumbnail" id="carousel-selector-0"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img1.jpg" alt="Image" style="max-width:100%;"></a></div>
<div class="col-md-2"><a href="#" class="thumbnail" id="carousel-selector-1"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img2.jpg" alt="Image" style="max-width:100%;"></a></div>
<div class="col-md-2"><a href="#" class="thumbnail" id="carousel-selector-2"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img3.jpg" alt="Image" style="max-width:100%;"></a></div>
<div class="col-md-2"><a href="#" class="thumbnail" id="carousel-selector-3"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img4.jpg" alt="Image" style="max-width:100%;"></a></div>
<div class="col-md-2"><a href="#" class="thumbnail" id="carousel-selector-4"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img5.jpg" alt="Image" style="max-width:100%;"></a></div>
<div class="col-md-2"><a href="#" class="thumbnail" id="carousel-selector-5"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img6.jpg" alt="Image" style="max-width:100%;"></a></div>
</div><!--.row-->
</div><!--.item-->
</div><!--.carousel-inner-->
<a data-slide="prev" href="#Carousel" class="left carousel-control">‹</a>
<a data-slide="next" href="#Carousel" class="right carousel-control">›</a>
</div><!--.Carousel-->
Я пытался:
<div class="carousel-inner">
<?php
echo "<div class='item active'>";
echo "<div class='row'>";
foreach($arr as $key=>$value){
if ($key== 6) {
echo "</div>";
echo "</div>";
echo "<div class='item'>";
echo "<div class='row'>";
}
echo "<div class='col-md-2'>";
echo '<a href="#" class="thumbnail" id="carousel-selector-'.$key.'"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img'.$value.'.jpg" alt="Image" style="max-width:100%;"></a>';
echo "</div>";
}
echo "</div>";
echo "</div>";?>
Ваш код цикла был довольно близок; все, что вам нужно, это оператор по модулю.
Если вы не знаете, что такое по модулю, вы можете прочитать здесь: http://php.net/manual/en/internals2.opcodes.mod.php
<?php
echo "<div class='item active'>";
echo "<div class='row'>";
foreach($arr as $key=>$value)
{
//if we can divide $key by six without remainder
if ($key % 6 == 0)
{
echo "</div>";
echo "</div>";
echo "<div class='item'>";
echo "<div class='row'>";
}
echo "<div class='col-md-2'>";
echo '<a href="#" class="thumbnail" id="carousel-selector-'.$key.'"><img src="https://web-answers.ru/wp-content/uploads/2019/03/img'.$value.'.jpg" alt="Image" style="max-width:100%;"></a>';
echo "</div>";
}
echo "</div>";
echo "</div>";?>
Вот мой вариант правильного ответа:
<?php
$result .= '<div class="item active">';
foreach ($get_result as $key => $value) {
if ($key !=0 && ($key % 6 == 0)) { //to avoid first empty "active"$result .= "</div>";
$result .= "<div class='item'>";
}
$result .= '<a href="'.$value['url'].'"><img src="'.$value['logo'].'" alt="'.$value['name'].'" title="'.$value['name'].'"></a>';
}
$result .= '</div>';
echo $result;
?>