PHP循环次数为X次

Ahm*_*med 10 php loops

我有一个字符串$columns,它动态地从1到7获取一个值.我想创建一个循环,其<td></td>次数$columns是is的很多倍.知道我怎么能这样做吗?

Fat*_*mez 31

for ($k = 0 ; $k < $columns; $k++){ echo '<td></td>'; }
Run Code Online (Sandbox Code Playgroud)


mur*_*rze 19

这是一种更易读的方法来实现这一目标:

foreach(range(1,$columns) as $index) {
   //do your magic here
}
Run Code Online (Sandbox Code Playgroud)

  • @tom - 不会首先调用`range()`,并在每次迭代中使用它的结果? (4认同)
  • 只是大范围的性能注释,range()将在循环的每次迭代中调用.首先分成变量以避免这种情况. (2认同)
  • 你是对的@alexkb,range()只会被评估一次。来源:/sf/ask/132434221/ (2认同)
  • 这里要非常小心。`range(1, 0)` 被执行两次,这可能不是你所期望的。普通的 for 循环不存在这个问题。 (2认同)

Ale*_*pov 13

如果您只需要使用重复计数:

for ($i = 0; $i < 5; $i++){
    // code to repeat here
}
Run Code Online (Sandbox Code Playgroud)


cro*_*lee 6

我喜欢这样:

while( $i++ < $columns ) echo $i;
Run Code Online (Sandbox Code Playgroud)

请记住,如果$columns是 5,则将运行 5 次(而不是 4 次)。

编辑:这里的初始状态似乎有些混乱$i$i=0如果您愿意,欢迎您提前初始化。但这不是必需的,因为 PHP 是一个非常有用的引擎,并且会自动为您执行此操作(不过,如果您碰巧启用了这些引擎,它会发出通知)。