2012-01-28 50 views
-2

可能重复:
PHP list all files in directory显示在页面上目录中的所有文件

Ive得到运行创造.xls文件每24小时一个cron作业,他们是在一个目录中创建它们在我的网站上称为www.mysite.com/sheets

我想要做的是制作一个网页,我可以去看到该目录中的所有.xls文件,并下载那些我不是使用ftp客户端下载它们。

这种事情有没有名字?我会写什么?我想我可以通过回显文件夹的内容来做到这一点,这会工作吗?

欢呼

+2

的可能重复[PHP列表目录下的所有文件(http://stackoverflow.com/questions/3826963/php-list-all-files-in-directory),[ PHP - 遍历目录并获取所有文件(图片)的代码](http://stackoverflow.com/questions/3608202/php-code-to-traverse-a-directory-and-get-all-the-filesimages )和许多其他许多相同的问题。 – salathe 2012-01-28 19:12:39

+0

也许您正在寻找php的scandir功能.. [阅读说明从php.net](http://php.net/manual/en/function.scandir.php) – 2012-01-28 19:11:28

+0

感谢您的输入 – user1037444 2012-01-28 19:20:47

回答

0

你可以激活目录你的网络服务器内上市,也可以使用像水珠的功能(“*。XLS”),列出文件和回声在Web服务器上的路径或您可以将文件发送到浏览器这样的:

<?php 
$filename = "path/to/your/file.xls"; 
$real_filename = "file.xls"; 
header('Content-Transfer-Encoding: none'); 
header('Content-Type: application/octet-stream; name="' . $real_filename . '"');  
header('Content-Disposition: attachment; filename=' . $real_filename);     
$size = @filesize($filename); 
if ($size > 0) { 
    header('Content-length: '.$size); 
} else { 
    header('Content-length: '[email protected](@file_get_contents($filename))); 
} 
readfile($filename); 
exit; 
?> 

如果要列出一个目录,使用这样的:

$handle = opendir("./"); 
while (false !== ($file = readdir($handle))) { 
    $fileinfo = pathinfo($file); 
    if (strtolower($fileinfo[extension]) == "xls") { 
     echo $file;  
    } 
} 
closedir($handle); 

或者这样:

foreach (glob("*.[xX][lL][sS]") as $filename) { 
    echo $filename; 
} 
0

使用glob()加上一些过滤的XLS文件。

glob("*.xls") 
+0

谢谢, 做你知道我会把这个剧本放在哪里? <?php $ cwd = $ _SERVER ['REQUEST_URI']; $ cwd = substr($ cwd,0,strrpos($ cwd,'/'+ 1)); function paintUndersideOfFox($ c){ global $ cwd; echo('

    '); $ d = opendir($ c); ($ f = readdir($ d)){if(strpos($ f,'。')=== 0)continue( ) $ ff = $ c。 '/'。 $ F; echo('
  • ' . $ff . '
  • '); if(is_dir($ ff))paintUndersideOfFox($ ff); } echo('
'); } paintUndersideOfFox('。'); ?> – user1037444 2012-01-28 19:30:17

0
+0

谢谢, 我发现这个脚本有任何想法如何改变它只显示.xls文件? <?php $ cwd = $ _SERVER ['REQUEST_URI']; $ cwd = substr($ cwd,0,strrpos($ cwd,'/'+ 1)); function paintUndersideOfFox($ c){ global $ cwd; echo('

    '); $ d = opendir($ c); ($ f = readdir($ d)){if(strpos($ f,'。')=== 0)continue( ) $ ff = $ c。 '/'。 $ F; echo('
  • ' . $ff . '
  • '); if(is_dir($ ff))paintUndersideOfFox($ ff); } echo('
'); } paintUndersideOfFox('。'); ?> – user1037444 2012-01-28 19:27:24

+0

我不是一个修理脚本的人。请花些时间阅读可用的资源以及SO上许多相同的问题。 – salathe 2012-01-28 19:28:16

相关问题