我正在使用此代码填充表:
<style type="text/css">
table, td
{
border-color: #600;
border-style: solid;
}
table
{
border-width: 0 0 1px 1px;
border-spacing: 0;
border-collapse: collapse;
}
td
{
margin: 0;
padding: 4px;
border-width: 1px 1px 0 0;
background-color: #FFC;
}
</style>
<table>
<tr>
<th>Files</th>
</tr>
<?php
foreach(new DirectoryIterator('/home/nathanpc/public_html') as $directoryItem) {
if($directoryItem->isFile()) {
printf('<td><tr><a href="/%1$s">%1$s</a></tr></td>', $directoryItem->getBasename());
}
} ?>
</table>
但是当我尝试它时,我得到的是桌子外的价值,而且所有的都是杂乱无章的。它位于服务器上:http://surl.x10.mx/list.php
答案 0 :(得分:5)
应该是:
printf('<tr><td><a href="/%1$s">%1$s</a></td></tr>', $directoryItem->getBasename());
tr
表示“表格行”,这些应该封装td
,而不是相反。
答案 1 :(得分:2)
你不想在那里使用表格!
您将文件命名为“list.php”,是吗?那么,为什么不实际使用列表?
printf('<li><a href="/%1$s">%1$s</a></li>', $directoryItem->getBasename());
除了更短,它是语义正确的 - 你的表不是。