将文件类型,日期与PHP echo传递到表中

时间:2012-11-18 23:42:52

标签: php uploadify

我还是PHP的新手,我正在尝试将文件夹中的文件回显到表格行。我可以成功回显服务器上的文件,但我尝试的文件类型的所有内容都不起作用。到目前为止,我的代码看起来像这样:

<?PHP 

$folder = "uploads/"; 
$handle = opendir($folder); 


# Making an array containing the files in the current directory: 
while ($file = readdir($handle)) 
{ 
    $files[] = $file; 
} 
closedir($handle); 

#echo the files 
$path_parts = pathinfo($file);
foreach ($files as $file) { 
    echo "

    <tr><td><a href=$folder$file>$file</a></td><td>$path_parts['extension']</td><td>date</td>   </tr>"
    ; 
} 
?>

随着它的设置,它给我一个服务器错误。当我取出路径部分/路径信息代码时它工作正常,但当然它不会回显文件类型。任何有关这方面的帮助将非常感激,如果有人知道实现文件上传日期的最佳方式,那将是很好的。顺便说一句,使用uploadifive作为上传器,如果这有任何区别。

2 个答案:

答案 0 :(得分:1)

如前所述,$path_parts变量赋值需要在foreach循环中。要保存一些代码行,您应该查看scandir作为读取文件夹中文件的while循环的替代。

以下是您的代码在更改后的效果:

<?PHP 

$folder = "uploads/"; 

# Making an array containing the files in the current directory: 
$files = scandir($folder); 

#echo the files 
foreach ($files as $file) { 
    $path_parts = pathinfo($folder.$file);
    echo "<tr><td><a href={$folder}{$file}>{$file}</a></td><td>{$path_parts['extension']}</td><td>date</td></tr>"; 
}

答案 1 :(得分:0)

我对您的代码做了一些修改:

<?php
$folder = "uploads/"; 
$handle = opendir($folder); 

# Making an array containing the files in the current directory: 
while ($file = readdir($handle)) 
{ 
    $files[] = $file; 
} 
closedir($handle); 

foreach ($files as $file) 
{
    #echo the files 
    $path_parts = pathinfo($file);
    echo "<tr><td><a href='" . $folder . $file . "'>" . 
         $file . "</a></td><td>" . $path_parts['extension'] . 
         "</td><td>date</td></tr>";
} 

大多数情况下,$path_parts = pathinfo($file);必须在循环中。 否则,您只在循环的最后$file上执行pathinfo。