Я хотел бы обратиться к последнему элементу в цикле while, чтобы не добавлять табуляцию в коде. Я бы мог сделать ещё один запрос к БД(на длину таблицы), но я бы хотел понять, как это сделать без лишнего запроса к БД
Сейчас это выглядит так:
Я бы хотел последнему элементу задать только \n и не добавлять табуляцию, чтобы </ul> был без табуляции
<?php
$connection = mysqli_connect('127.0.0.1', 'root', '', 'news');
if (connection == false) {
echo 'Не удалось подключиться к базе данных';
echo mysqli_connect_error();
exit();
}
$result = mysqli_query($connection, "SELECT * FROM `articles_categories`");
?>
<ul>
<?php
while (($record = mysqli_fetch_assoc($result))) {
$stroke = '<li>' . $record['title'] . '</li>';
echo $stroke . "\n\t";
}
?>
</ul>
<?php
mysqli_close($connection);
?>
Я нашёл решение. Я не делаю ещё один запрос mysqli_query, а с помощью mysqli_num_rows получаю количество записей, которые я получил с помощью mysqli_query
<?php
$connection = mysqli_connect('127.0.0.1', 'root', '', 'news');
if (connection == false) {
echo 'Не удалось подключиться к базе данных';
echo mysqli_connect_error();
exit();
}
$result = mysqli_query($connection, "SELECT * FROM `articles_categories`");
$resultLength = mysqli_num_rows($result);
?>
<ul>
<?php
$i = 0;
while (($record = mysqli_fetch_assoc($result))) {
$i++;
$stroke = '<li>' . $record['title'] . '</li>';
$stroke = $i === $resultLength ? $stroke .= "\n" : $stroke .= "\n\t";
echo $stroke;
}
?>
</ul>
<?php
mysqli_close($connection);
?>
Сборка персонального компьютера от Artline: умный выбор для современных пользователей