在不同的目录,PHP获取一个未知的文件名

时间:2015-09-23 11:02:25

标签: php

这是我的目录结构

C:\xampp\htdocs\..

C:\download\20150923abc.xls  //abc is a random value

如何在php中附加文件20150923abc.xls

另外,我拿到文件后如何更改文件名?

感谢。

1 个答案:

答案 0 :(得分:0)

使用glob能力查找所有类型为.xls的文件的引用,然后您可以根据需要使用文件名引用。这可以避免您不知道具体文件名的问题。

$files = glob("c:/download/*.xls");

这将生成所有.xls文件的数组及其完整文件路径。如果您希望重命名或附加这些文件,则可以使用glob参考:

执行此操作
rename($files[0], "c:/download/somenewname.xls");

等。阅读更多内容:

PHP Glob Function

编辑:

来自以下评论:

foreach (glob( $old_folder."*.xls") as $filename) 
{
     $names = explode('/', $filename); 
     $just_file_name = end($names); 
     echo $just_file_name . "----\n"; 
     $new_folder = dirname(FILE)."\\prm\\att\\";
      //rename_win($old_folder, $new_folder); 
     rename($filename, $new_folder.$just_file_name); <== this line changed.
}
unset($filename);

要在注释中修复上述代码,您需要将引用的不正确变量(没有数组$files[0])更改为foreach循环中使用的变量。