Следующий код PHP взят с сайта, который я пытаюсь создать. По сути, я пытаюсь вывести содержимое запроса SQL в строки с 4 столбцами в каждой строке.
<?php
$prep_stmt = $conn->prepare("SELECT * FROM eggs WHERE `egg_dist` = 5");
$prep_stmt->execute();
$res = $prep_stmt->fetchAll();
//$row as $r
for($x = 0; $x < len($res); $x+=4) {
echo "<div class ='row'>";
for($y = $x; $y < $x+4; $y++){
echo "<div class = 'col-3 text-center'>".$res[$y]['name']."</div>";
}
echo "</div>";
}
?>
Внешний цикл for должен выполнять 1/4 длины результирующего запроса. Внутренний цикл Я хочу перебрать более 4 записей из массива запросов. Я думал о том, чтобы сделать это с циклом foreach, но проблема в том, что в начале каждого цикла он начинается снова, поэтому у меня нет способа сохранить местоположение, и поэтому я вынужден делать это с помощью регулярного цикла for.
Моя проблема связана с len($res)
, которого, очевидно, нет в PHP. Я хочу получить длину массива извлеченного подготовленного оператора, но не совсем понимаю, как. Официальная документация php показывает использование fetchColumn (), но способ, которым я это пробовал, должен был быть неправильным. Я также видел сайт, который рекомендовал использовать len (), и, очевидно, он тоже не работал, как если бы это было так, я бы не стал делать это сообщение.