gpt4 book ai didi

php使用ceil函数在多列中显示数组数据

转载 作者:行者123 更新时间:2023-11-29 06:09:20 24 4
gpt4 key购买 nike

例如,我有一个包含 8 个数据的数组。我要以这种格式显示

$a = array(1,2,3,4,5,6,7,8);
======
1 2
3 4
5 6
7 8
=====

包含 11 个数据的或数组

$a = array(1,2,3,4,5,6,7,8,9,10,11);
=========
1 2 3
4 5 6
7 8 9
10 11
=========

不确定我错了哪一部分。这是我的代码

$a = array(1,2,3,4,5,6,7,8);
$c = ceil(count($a)/2);

echo "<table>";
for($i=0; $i<$c;$i++){
echo "<tr>";
echo '<td>'.$a[$i].'</td>';
echo '<td>'.$a[$i+1].'</td>';
}
echo "</table>";

然而,我的数据却以这种方式显示

======            
1 2
2 3
3 4
4 5
=====

基本上,我想以这种格式显示来自 mysql 的数据。但在此之前,我需要测试 ceil 函数并查看其是否正常工作。任何人都知道我的编码有什么问题?

最佳答案

由于每行有 2 个 cel,因此您需要计算实际索引。也不要忘记关闭 <tr>

for($i=0; $i<$c;$i++){
echo "<tr>";
echo '<td>'.$a[$i * 2].'</td>';
echo '<td>'.$a[$i * 2 + 1].'</td>';
echo '</tr>';
}

这是一个更清洁的解决方案的完整示例:

<?php
$a = array(1,2,3,4,5,6,7,8);
$cols = 2;
$c = ceil(count($a) / $cols);

echo "<table>";
for($i = 0; $i < $c; $i++){
echo "<tr>";
for ($col = 0; $col < $cols; $col++) {
$value = isset($a[$i * $cols + $col]) ? $a[$i * $cols + $col] : '';
echo '<td>'. $value .'</td>';
}
echo "</tr>";
}
echo "</table>";

关于php使用ceil函数在多列中显示数组数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39292901/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com