Если статьи или любые другие сущности удаляются вручную (или программно) то в последовательности id появляются дыры.
И соответственно пагинация будет работать некорректно на некоторых страницах.
Для сохранения последовательности id необходимо использовать "мягкое удаление". Создаем столбец deleted_at, которое будет хранить или дату удаления или NULL.
Можно делать нормализацию id (сдвиг) при удалении статьи или других строк. Но есть существенный минус — id статьи может быть присутствовать в другой таблице. И таким образом мы сломаем связь.
Универсального и подходящего всем решения нет.
в коде на тест генерации времени страницы в index.php пропущено определение переменной $endTime:```
<?php
$startTime = microtime(true);
// тут весь остальной код
$endTime = microtime(true);
printf('<div style="text-align: center; padding: 5px">Время генерации страницы: %f</div>', $endTime - $startTime );
Если статьи или любые другие сущности удаляются вручную (или программно) то в последовательности id появляются дыры.
И соответственно пагинация будет работать некорректно на некоторых страницах.
Для сохранения последовательности id необходимо использовать "мягкое удаление". Создаем столбец deleted_at, которое будет хранить или дату удаления или NULL.
Можно делать нормализацию id (сдвиг) при удалении статьи или других строк. Но есть существенный минус — id статьи может быть присутствовать в другой таблице. И таким образом мы сломаем связь.
Универсального и подходящего всем решения нет.
Можно так и тогда, разве что только по маленькому сбегать успеем
create_many_articles.php
Отличный вариант оптимизации!