$ ABC =阵列(1,2,3,4,5,6,7,8);
$ XYZ =阵列(A,B,C,d,E,F);
我想以所需的格式从上面的两个数组中检索数据(实际上那些数组是从数据库表生成的)。数据将显示在html TABLE中。我使用过PHP MYSQL。这些值可能不是按示例显示的顺序,但有两个不同的数组。为了更清楚,我想说奇数列(从第一列开始)将显示 array abc 的值,甚至会显示 array xyz 的值。 请帮帮我。提前谢谢。
答案 0 :(得分:1)
这是一个非常有趣的问题。我想我找到了解决方案。
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>';
}
现在你可以使用:
echo table ([ 'i', 'b', 'a', 'e', 'b' ], ['1', '2', '3'], 2);
2指示它将在每两行分割,就像你的例子中的那样。