Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.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 分解和foreach以创建多个<;td>;桌子_Php_Html_Loops_Foreach_Html Table - Fatal编程技术网

Php 分解和foreach以创建多个<;td>;桌子

Php 分解和foreach以创建多个<;td>;桌子,php,html,loops,foreach,html-table,Php,Html,Loops,Foreach,Html Table,我使用explode()基本上将段落分解成单个单词。效果很好。使用foreach()进行循环。也很有效。这里没什么复杂的 $title_pieces = explode(" ", $title_fixed); foreach($title_pieces as $tpiece){ echo "<b>$tpiece<br>"; } 我还剩下一长串。有人能给我指一下正确的方向吗 试试以下方法: $count = 1; echo "<tr>"; foreach($t

我使用
explode()
基本上将段落分解成单个单词。效果很好。使用
foreach()
进行循环。也很有效。这里没什么复杂的

$title_pieces = explode(" ", $title_fixed);
foreach($title_pieces as $tpiece){
echo "<b>$tpiece<br>";
}
我还剩下一长串。有人能给我指一下正确的方向吗

试试以下方法:

$count = 1;
echo "<tr>";
foreach($title_pieces as $tpiece){
    if ($count % NUM_COLS == 0)
         echo "</tr><tr>";

    echo "<td>$tpiece</td>";
    $count++;
}
echo "</tr>";
$count=1;
回声“;
foreach($t片名){
如果($count%NUM\u COLS==0)
回声“;
回声“$tpiece”;
$count++;
}
回声“;

这里面可能有一个聪明的优化。您要做的是计算单元格的数量,并在计数平均除以NUM_COLS时开始新的一行。重要的是计数从1开始,而不是从0开始,否则您将有一个空行。

只是一个示例代码。使用
模运算器解决问题

<?php
$i = 1;
echo '<table><tr>';
foreach($title_pieces as $tpiece){
    if ($i % 10 == 0)
        echo "</tr><tr>";

    echo "<td>$tpiece</td>";

    $i++;
}

echo '</tr></table>';
?>


不要在每次迭代中都设置一个结束和开始tr。快告诉我吧。请投你一票,先生。编辑:那个奇怪的编辑是错误的。你有两次tr的回音。应该是表吗?新的行后的条件,只服务于混淆noobdevelopers@jimjimmy1995:没有。因为1/10不是0,所以第一个循环不会回显第一个循环。不加修饰的放置是错误的。最后一个是如果最后一个元素没有这样做,就关闭该行。我仍然喜欢这个答案,但最后一行的单元格数量可能不匹配。
<?php
$i = 1;
echo '<table><tr>';
foreach($title_pieces as $tpiece){
    if ($i % 10 == 0)
        echo "</tr><tr>";

    echo "<td>$tpiece</td>";

    $i++;
}

echo '</tr></table>';
?>