PHP 将每 3 个元素包装在 TR for 表中

php wrap every 3 elements in a tr for table

本文关键字:TR for 表中 包装 元素 将每 PHP      更新时间:2023-09-26

在我的一个表中,我想在我们的输出之上,但它有点chna,任何帮助将不胜感激。

所以。。。

<tr>
     <td></td>
     <td></td>
     <td></td>
     <td></td>
     <td></td>
     <td></td>
</tr>

成为。。。

<tr class="new"> 
    <td></td> 
    <td></td> 
    <td></td> 
</tr> 
<tr class="new"> 
    <td></td>
    <td></td>
    <td></td>
</tr>

如果你有字符串形式的html,你可以对字符串执行一些正则表达式和循环,并从数组中获得所需的结果,我不确定这是否是你要找的。

var result = html.match(/<td>(.*?)<'/td>/g).reduce(
	function(new_array,x,i,arr) {
		if(i % 3 == 0){
		new_array.push('<tr class="new">' + arr[i] + (arr[i+1] || '') + (arr[i+2] || '') + '</tr>');
		return obj;
               }
	}
,[])

你只需要为此设置计数器,例如:

        $counter = 0;
        foreach ($table_data as $single_table_date){
            if ($counter % 3 == 0) {
                echo '</tr>';
                echo '<tr>';
            }
            echo '<td>';
            echo $single_table_date;
            echo '</td>';
            $counter++;
        }