PHP-for循环仅应执行一次前缀

时间:2019-01-31 14:55:47

标签: javascript php html html5

我需要只执行一次的for循环,以便可以在文本中添加前缀(1到10个数字)

foreach($_POST['Checked'] as $check){

    if($check== ""){                                     
        $check= " ";                                             
    } else {                                                                 
        $check= " ".$check;                                      
    }

    $html .= '<div style="font-family:Arial;padding: 4px;"> - '.$check.'</div>';
}

我的代码不足

  • 测试
  • 演示
  • 测试
  • 验证
  • 验证

我需要什么:

  1. 测试
  2. 演示
  3. 测试
  4. 验证
  5. 验证

我写了一个for循环,但显示为

  1. 测试
  2. 演示
  3. 测试
  4. 验证
  5. 验证
  6. 测试
  7. 演示
  8. 测试
  9. 验证
  10. 验证

不应该这样。

1 个答案:

答案 0 :(得分:1)

正如安德烈亚斯(Andreas)所说,您应该使用<ol>而不是仅使用div。

首先,将<ol>放在for()循环之前,然后在循环之后将其关闭(</ol>)。然后,将其变成<div>标记,而不是for循环中的<li>

但是,如果您要打印的是数字而不是让HTML为您呈现数字,则可以执行以下操作:

foreach($_POST['Checked'] as $n=>$checked)

这将创建一个变量$n,它是值$checked的数组键。因此,如果Test的键是0,则回显$n . '. ' . $checked将使您0. Test。下一个将是1. Demo,依此类推

在这种用例中,您应该使用<ol>,但是我认为我会扔掉数组键,因为它是另一种解决方案,如果您还不知道,它可能在其他地方也很有用。