Php 基于某些限制在html表中显示数据
$abc=阵列1,2,3,4,5,6,7,8 $xyz=arraya,b,c,d,e,f 我想以所需的格式从上述两个数组中检索数据,实际上这些数组是从数据库表生成的。数据将显示在html表格中。我使用过PHP MYSQL。这些值可能不是如示例所示的序列,但有两个不同的数组。为了更清楚,我想说,从第一列开始的奇数列将显示数组abc的值,偶数列将显示数组xyz的值。 请帮帮我。提前谢谢Php 基于某些限制在html表中显示数据,php,Php,$abc=阵列1,2,3,4,5,6,7,8 $xyz=arraya,b,c,d,e,f 我想以所需的格式从上述两个数组中检索数据,实际上这些数组是从数据库表生成的。数据将显示在html表格中。我使用过PHP MYSQL。这些值可能不是如示例所示的序列,但有两个不同的数组。为了更清楚,我想说,从第一列开始的奇数列将显示数组abc的值,偶数列将显示数组xyz的值。 请帮帮我。提前谢谢 这是一个非常有趣的问题。我想我找到了解决办法 function table (array $array1, arr
这是一个非常有趣的问题。我想我找到了解决办法
function table (array $array1, array $array2, $splitIndex)
{
$rows = array ();
$currentRow = 0;
// Make sure $array1 is the bigger of them
if (count ($array2) > count ($array1))
{
$arrayTemp = $array2;
$array2 = $array1;
$array1 = $arrayTemp;
}
// Loop over each element of the array
foreach ($array1 as $index => $arrayValue)
{
$rows [$currentRow] [] = $arrayValue;
if (isset ($array2 [$index]))
$rows [$currentRow] [] = $array2 [$index];
else
$rows [$currentRow] [] = '';
$currentRow = ($currentRow == $splitIndex ? 0 : $currentRow + 1);
}
$output = '<table>';
// Loop over the rows
foreach ($rows as $row)
{
$subOutput = '<tr>';
// Loop over the columns in the rows
foreach ($row as $element)
$subOutput .='<td>'. $element .'</td>';
$output .= $subOutput .'</tr>';
}
// Return the output altogether.
return $output .'</table>';
}
2表示它将每两行拆分一次,就像您的示例中的3一样。我们无法完成您的工作。但首先,在我做任何事情之前,我需要了解一些关于用户数据是如何处理的。点击Go后是否重新加载页面?或者有AJAX吗?这个问题还不清楚,因为其中一个问题没有描述将此划分为列的规则。如果$abc比$xyz长得多,您会继续添加空列吗?还有,只有3行有什么具体原因吗?除此之外,由于@Václav提到的原因,这是一个糟糕的问题。如果数组大小不匹配,它可能会添加空列,这是对的,但逻辑是,如果一个数组完成,另一个数组将从那里追加。事实上,这是一个机构的考试座位计划,他们希望自动生成不同课程的学生卷号。e、 假设物理系学生坐在第1、3、5排。。。。。和2,4,6上的化学。。。。。若座位排成奇数或偶数行,那个么生物学将从那个里继续下去。虽然我知道这是一个关键的逻辑,但我必须让它发生。谢谢Aron,它可以根据我的需要工作,但是可以限制表中的行数和列数,以便只显示适合该表的值吗。我还可以设置要显示的数组中值的起始和结束范围。希望你明白。再次感谢你的帮助。我对脚本做了一些更改。它现在有了新的语法和更多的自定义选项。起始和结束范围版本:用法:echo-keyValueTable['a'=>'b'..],0,数组,0,,,$startIndex,$length;我无法调用该函数,我传递的参数结果为空,请给出一个示例。谢谢,请查看源代码中的默认值。对原始代码的一个主要更改是,现在只需发送一个数组,而不是两个。数组填充键可能适合您。我已经给出了一个示例代码,您可以在我之前的评论中看到。只要确保使用单个阵列,一切都会正常:
echo table ([ 'i', 'b', 'a', 'e', 'b' ], ['1', '2', '3'], 2);