пример кода
<?php
$rows
= array(
array(
0 =>'value 1',
1 =>'value 2',
2 =>'value 3',
3 =>'value 4',
4 =>'value 5',
)
);
$header = array (
0 => 'header 1',
1 => 'header 2',
);
$table = theme_table($header, $rows, $attributes = array(), $caption = NULL);
?>
В итоге, таблица то выводится, но строчит <td>
в одну строку, я же как бы ожидаю, что будет приниматься в расчёт количество элементов в массиве $header, т.е в моём случае должна выйти таблица в 2 колонки и 3 строки
Где думаю неправильно?
Комментарии
Везде, в общем-то.
Функции без разницы, сколько элементов в $header, она добавит беззаголовочные столбцы, если надо. То есть это забота юзера функции, задавать число ячеек в строке. Иными словами:
array(
0 =>'value 1',
1 =>'value 2',
),
array(
2 =>'value 3',
3 =>'value 4',
),
array(
4 =>'value 5',
)
);
Или даже
array(
'value 1',
'value 2',
),
array(
'value 3',
'value 4',
),
array(
'value 5',
)
);
(чтоб лишнего не писать)
Ок, понятно, спасибо
Вроде работает:
<?php
$rows = array_chunk($items, 2);
$table = theme_table(NULL, $rows, NULL, NULL);
?>
Заполняет ячейки по горизонтали, сеткой, без заголовка, как и надо