在php unlink中使用通配符

时间:2011-06-24 18:08:55

标签: php wildcard unlink

我目前正在创建一个php脚本来绘制来自数据库的大量数据,将其排列成文本文件,然后运行GNUPlot脚本来生成图形。我已经完成了所有这些工作,现在我需要做的就是删除我不再需要的文本文件。

我一直在尝试的是从另一个论坛上的另一个主题获得的:

foreach( glob('US_A.2.6.*') as $file )
    {
        unlink($file);
    }

然而,问题在于它不起作用。这些文件具有复杂的结束名称:

  • US_A.2.6.1.1a.txt
  • US_A.2.6.1.2a.txt
  • US_A.2.6.1.3a.txt
  • US_A.2.6.1.4a.txt
  • US_A.2.6.1.5a.txt
  • US_A.2.6.1.6a.txt

还有更多。

1 个答案:

答案 0 :(得分:6)

使用getcwd()检查您的工作目录。如果您与文本文件不在同一目录中,则需要指定路径。

另外,尝试回显glob()语句的输出以查看它是否找到任何文件:

echo $file . PHP_EOL;
unlink($file);

您没有检查unlink()返回值,因此如果文件是不可写的,它可能会以静默方式失败(取决于您的error_reporting级别)。