2

我有以下代码:

$tmpfile = $tempDirectory . $file ;

if (file_exists($tmpfile)) {

   header('Location: <some location>');

}

它工作完美,文件存在,我被重定向到我的新页面。

所以,现在我知道该文件存在并且有效。所以,我进入 FTP,确保文件在那里。

然后我运行这段代码:

$tmpfile = $tempDirectory . $file ;

if (file_exists($tmpfile)) {

   unlink($tmpfile);
   header('Location: <some location>');

}

重定向停止工作。PHP 什么也不输出。该文件将从 FTP 目录中删除。但是重定向完全失败。

如果我echo在存在取消链接的情况下在 if 语句中放置一个(在 if 语句中的任何其他代码行之前或之后,它不会输出任何内容。

没有 unlink 错误,而且我检查 FTP 时文件明显被删除,所以这是怎么回事?

它在代码运行时被删除,所以这显然不是权限问题。如果它没有权限这样做,它将无法删除该文件。

任何帮助表示赞赏。谢谢!

4

1 回答 1

1

解决方案可能很简单:

[blank space] - this breaks redirect
<?php

// code

PHP 也可能在取消链接时崩溃。确保您的error_reporint 设置设置为 E_ALL。

于 2012-08-21T23:15:58.020 回答