Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将数组转换为HTML表,并用空单元格表示缺少的值_Php_Arrays - Fatal编程技术网

Php 将数组转换为HTML表,并用空单元格表示缺少的值

Php 将数组转换为HTML表,并用空单元格表示缺少的值,php,arrays,Php,Arrays,我有一个数值数组。每个值都不同,数组按升序排序,从最小值1到最大值80 $numbers=数组(“1”、“3”、“5”、“6”、“12”、“13”、“15”、“20”, "24", "28", "32", "33", "34", "42", "47", "49", "50", "54", "59", "79"); 我想在一个表行中显示这个数组,每个数字在一个单元格中,非当前值显示为空单元格,如下所示: $numbers=array("1","6","7","10","12","16","17"

我有一个数值数组。每个值都不同,数组按升序排序,从最小值1到最大值80

$numbers=数组(“1”、“3”、“5”、“6”、“12”、“13”、“15”、“20”,
"24", "28", "32", "33", "34", "42", "47",
"49", "50", "54", "59", "79");
我想在一个表行中显示这个数组,每个数字在一个单元格中,非当前值显示为空单元格,如下所示:

$numbers=array("1","6","7","10","12","16","17","22","27","34","35","45","49","52","53","56","57","76","78","80");

function results($array){
    echo "<tr>";
    for ($i=1; $i<81 ; $i++) { 
        if (in_array($i, $array)) {
            echo "<td>".$i."</td>";
        }
        else{
            echo "<td></td>";
        }
    }
    echo "</tr>";
}

results($numbers);

1.
3.
5.
6.
....
换句话说,如果数组中缺少该值,则应插入一个空表单元格。在上面的示例中,
2
4
所在的单元格为空,因为这些值不在数组中


总共将有80个

像这样的东西怎么样(假设最小值为1,最大值为80):

echo';

对于($i=1;$i这样的东西怎么样(假设最小值为1,最大值为80):

echo';

对于($i=1;$i解决了如下问题:

$numbers=array("1","6","7","10","12","16","17","22","27","34","35","45","49","52","53","56","57","76","78","80");

function results($array){
    echo "<tr>";
    for ($i=1; $i<81 ; $i++) { 
        if (in_array($i, $array)) {
            echo "<td>".$i."</td>";
        }
        else{
            echo "<td></td>";
        }
    }
    echo "</tr>";
}

results($numbers);
$numbers=数组(“1”、“6”、“7”、“10”、“12”、“16”、“17”、“22”、“27”、“34”、“35”、“45”、“49”、“52”、“53”、“56”、“57”、“76”、“78”、“80”);
函数结果($array){
回声“;

对于($i=1;$i解决了如下问题:

$numbers=array("1","6","7","10","12","16","17","22","27","34","35","45","49","52","53","56","57","76","78","80");

function results($array){
    echo "<tr>";
    for ($i=1; $i<81 ; $i++) { 
        if (in_array($i, $array)) {
            echo "<td>".$i."</td>";
        }
        else{
            echo "<td></td>";
        }
    }
    echo "</tr>";
}

results($numbers);
$numbers=数组(“1”、“6”、“7”、“10”、“12”、“16”、“17”、“22”、“27”、“34”、“35”、“45”、“49”、“52”、“53”、“56”、“57”、“76”、“78”、“80”);
函数结果($array){
回声“;

对于($i=1;$iI假设您可以从1循环到数组中的最大值,并在循环的每个迭代中输出一个
单元格。输出单元格时,检查数组是否包含该值。如果包含该值,则也输出该值。我假设您可以从1循环到数组中的最大值,并在t的每个迭代中输出一个
单元格他循环。当输出单元格时,检查数组是否包含该值。如果包含,也输出该值。您应该接受@cale_b答案……而且该代码比您在此处发布的代码更干净(例如,您有两个不同的位置可以生成表单元格标记,而不是仅一个)。(IMO)非常感谢。我将使用您的代码。它更干净、更容易理解。您应该接受@cale_b答案……而且该代码比您在此处发布的代码更干净(例如,您有两个不同的位置可以生成表格单元格标记,而不是一个)。(IMO)非常感谢。我会使用你的代码。更干净,更容易理解