2017-08-24 79 views
2

我想以表格形式显示我的图像。这里是我的代码:使用php,html显示表格中文件夹的图像?

<?php 
$files = glob("images/*.*"); 
for ($i = 0; $i < count($files); $i++) { 
    $image = $files[$i]; 
    $supported_file = array(
     'gif', 
     'jpg', 
     'jpeg', 
     'png' 
    ); 

    $ext = strtolower(pathinfo($image, PATHINFO_EXTENSION)); 
    if (in_array($ext, $supported_file)) { 
     echo basename($image); 
echo '<img src="' . $image . '" alt="Random image" ,width=100px, height=100px /><br>'; 
} else { 
continue; 
} 
} 
?> 

enter image description here

类似的东西的图片。

+0

刚刚创建表格标记“

”和“”和“
' – Ghost

+0

使用'for'loop遍历图像是一种有效的方法,但是您忘记将表结构添加到输出中。没有这个表格就不会被浏览器渲染。我建议你阅读关于如何在html标记中定义表格的几行内容。您可以使用表格元素(行和单元格)定义表格,然后在单元格内输出图像,就像您已经做过的那样。 – arkascha

+0

你的实际产出是多少?你的想法可能会有另一个错误,即PHP使用文件系统的文件路径(绝对路径),而HTML使用相对于文档根目录的路径。因此,您需要将PHP路径转换为HTML可以使用的路径。 –

回答

1

如果你想在表中简单的添加table标签与和它

<table> 
<tr> 
    <th>Image Name</th> 
    <th>Image</th> 
</tr> 
<?php 
$files = glob("images/*.*"); 
for ($i = 0; $i < count($files); $i++) { 
    $image = $files[$i]; 
    $supported_file = array(
     'gif', 
     'jpg', 
     'jpeg', 
     'png' 
    ); 

    $ext = strtolower(pathinfo($image, PATHINFO_EXTENSION)); 
    if (in_array($ext, $supported_file)) { 
     echo "<tr><td>"; 
     echo basename($image); 
     echo "</td><td>"; 
     echo '<img src="' . $image . '" alt="Random image" ,width=100px, height=100px /><br>'; 
     echo "</td></tr>"; 
} else { 
continue; 
} 
} 
?> 
</table> 
+0

谢谢你的回答。帮助我很多。 :) –

3

从改变你的HTML代码:

echo '<img src="' . $image . '" alt="Random image" ,width=100px, height=100px /><br>';

echo "<table border='1'>"; 
    echo "<tr><td>"; 
    echo basename($image); 
    echo "</td><td>"; 
    echo '<img src="' . $image . '" alt="Random image" ,width=100px, height=100px />'; 
    echo "</td></tr>"; 
    echo "</table>"; 
+0

谢谢你的回答。帮助我很多。 :) –

相关问题