在我的项目中动态创建
<li>Heading 1</li>
<li>Image 1</li>
<li>Image 2</li>
<li>Image 3</li>
<li>Image 4</li>
<li>Image 5</li>
<li>Heading 2</li>
<li>Image 1</li>
<li>Image 2</li>
<li>Image 3</li>
<li>Heading 3</li>
<li>Image 1</li>
每个标题都是一个类别,图像名称是每个类别下的图像。 现在它逐一到来,我希望将它们并排显示,如图所示。
如同图像中的一个标题和下面的两个图像以及下一个标题下的标题。如果在一个类别下,则下一个标题将进入新列。
如何使用php创建像图像一样的表格。每个标题及其图像。
答案 0 :(得分:0)
您可以使用表格,然后使用html:
<table>
<tr>
<th>Heading 1</th>
<td>Image 3</td>
<th>Heading 2</th>
<td>Image 3</td>
<th>Heading 3</th>
</tr>
<tr>
<td>Image 1</td>
<td>Image 4</td>
<td>Image 1</td>
<td>Image 4</td>
<td>Image 1</td>
</tr>
<tr>
<td>Image 2</td>
<td>Image 5</td>
<td>Image 2</td>
<td></td>
<td></td>
</tr>
</table>
这是一个简单的技巧:示例
<?php
$images = array('Image 1', 'Image 2', 'Image 3', 'Image 4', 'Image 5');
$fixRow = 3; //total fixed row that you want
$L1 = 5;/*List-1 item*/ $L1C = ceil(($L1+1)/$fixRow);// 2 row for 1st list
$L2 = 3;/*List-2 item*/ $L2C = ceil(($L2+1)/$fixRow);//2 row for 2nd list
$L3 = 1;/*List-3 item*/ $L3C = ceil(($L3+1)/$fixRow);//1 row for 3rd list
?>
<table>
<tr>
<?php
//list-1 column=2
$k=0;
for ($i=0; $i<$L1C ; $i++){
if($i==0){
echo "<th>Heading 1</th>";
}else{
echo "<td>".$images[$k-1]."</td>";
}
$k = $k+$fixRow;
}
//list-2 column=2
$k=0;
for ($i=0; $i<$L2C ; $i++){
if($i==0){
echo "<th>Heading 2</th>";
}else{
echo "<td>".$images[$k-1]."</td>";
}
$k = $k+$fixRow;
}
//list-3 column=1
$k=0;
for ($i=0; $i<$L3C ; $i++){
if($i==0){
echo "<th>Heading 3</th>";
}else{
echo "<td>".$images[$k-1]."</td>";
}
$k = $k+$fixRow;
}
?>
</tr>
<?php for ($j=0; $j <2 ; $j++){
echo "<tr>";
$k=$j;
for ($i=0; $i<$L1C ; $i++) {
if($i==0){
if($j<$L1){
echo "<td>".$images[$j]."</td>";
}else{
echo "<td></td>";
}
}else{
if($k<$L1){
echo "<td>".$images[$k]."</td>";
}else{
echo "<td></td>";
}
}
$k = $k+$fixRow;
}
$k=$j;
for ($i=0; $i<$L2C ; $i++) {
if($i==0){
if($j<$L2){
echo "<td>".$images[$j]."</td>";
}else{
echo "<td></td>";
}
}else{
if($k<$L2){
echo "<td>".$images[$k]."</td>";
}else{
echo "<td></td>";
}
}
$k = $k+$fixRow;
}
$k=$j;
for ($i=0; $i<$L3C ; $i++) {
if($i==0){
if($j<$L3){
echo "<td>".$images[$j]."</td>";
}else{
echo "<td></td>";
}
}else{
if($k<$L3){
echo "<td>".$images[$k]."</td>";
}else{
echo "<td></td>";
}
}
$k = $k+$fixRow;
}
echo "</tr>";
} ?>
</table>
您可以使用常用功能进行修改