У меня есть 2-мерная массив с 30 + узлами позиций в следующем формате.Рандомизированный массив miltidimentional
$catalog= array(
array(
code => "ABC",
name => "Item name",
link => "domain.com/item121"
),
array(
code => "DEF",
name => "Another item name",
link => "domainB.com/item333"
)
);
мне нужно сделать следующее:
- рандомизировать массиву
- Показать первые 5 элементов в строке
- Показать остальное внутри другой контейнер 5 штук в ряд.
Я хочу показать только полные строки из 5 и без партиций. Поэтому я считаю общие элементы:
$items= count($catalog);
Тогда я сосчитать, сколько для отображения иметь полные строки 5:
$showItems = floor($logosN/5) * 5; // num or rows * cnt per row
Я не знаю, как сделать все остальное. Я могу выводить элементы без случайной статистики
echo '<div class="first5">';
// 5 first items here
echo '</div>';
echo '<div class="restItems">';
// rest items need to go here
for ($x = 0; $x <= $showItems - 1; $x++) {
echo '
<div class="item">
<div class="item_'.$catalog[$x][code].'"></div>
</div>';
}
echo '</div>';
Нужна помощь здесь. Благодарю.
Если вы в состоянии сделать это без случайной выборки, просто вызовите 'array_shuffle()' и используйте ту же процедуру. – Barmar