1) Изменение количества столбцов на JavaScript
const cols = 10;
object.style.gridTemplateColumns=`repeat(${cols},auto)`;
2) Изменение количества столбцов в PHP
<?php $cols = 10; ?>
...
<div class="grid" style="--cols: <?php echo $cols; ?>;">...</div>
и следующем коде CSS
.grid {
display: grid;
grid-template-columns: repeat(var(--cols), 1fr);
}