在当前函数中用PHP创建表

问题描述 投票:-2回答:2

我真的很挣钱。我用谷歌搜索了一下,问了我认识的每个人,然后困扰你们好人!

我将下面的内容拼凑在一起,将最新的20个文件显示为文件夹中的链接。

我唯一的问题是输出是一个字符串。我真的想把它放在一张桌子里。

每次我尝试它只是转储每个字段中的所有内容,所以我想我需要一些聪明的循环!

有任何想法吗?这是我的代码:

<?php
$dir = "./PDF";
chdir($dir );
$show = 20;

$files = glob( '*.{pdf}', GLOB_BRACE );
usort( $files, create_function('$b, $a', 'return filemtime( $a ) - filemtime( $b );') );

for ( $i = 0; $i < $show; ++$i )
echo '<a href="./PDF/', $file = $files[$i], '" target="_blank">', $file, '</a> - ', date( 'D, M d, Y', filemtime($file) ), ' - ',filesize($file),'kb;<br /><br/>', "\n";
?> 
php glob
2个回答
1
投票

这是你想要的?

<?php
$dir = "./PDF";
chdir($dir );
$show = 20;

$files = glob( '*.{pdf}', GLOB_BRACE );
usort( $files, create_function('$b, $a', 'return filemtime( $a ) - filemtime( $b );') );

echo '<table>';
for ( $i = 0; $i < $show; ++$i ) {
    $file = $files[$i];
    echo '<tr>';
    echo '<td><a href="./PDF/'. $file .'" target="_blank">'. $file .'</a></td>';
    echo '<td>'.date( 'D, M d, Y', filemtime($file) ). '</td>';
    echo '<td>'. filesize($file) .'kb</td>';
    echo '</tr>';
}
echo '</table>';

0
投票

foreach可能会让你更容易,但看起来你的问题是:

1)。使用.而不是,来连接。

2)。将“\ n”放在“新行”的末尾

foreach($files as $file){

    echo '<tr><td><a href="./PDF/'.$file.'" target="_blank">'.$file.'</a></td><td>'., date( 'D, M d, Y', filemtime($file) ).'</td> <!--etc -->'."\n";//double quotes around "\n"  
 // for your 20 limit, you could:
i++; if(i>=20){break;}

//但你可以坚持使用for循环,然后取出作业。 }

© www.soinside.com 2019 - 2024. All rights reserved.