PHP与灾难脱钩

PHP与灾难脱钩,php,filesystems,unlink,Php,Filesystems,Unlink,我正在使用php函数unlink(),正如您最可能假设的那样,但它似乎给了我一个假阴性。。。它给了我这样的警告: 警告:取消链接(/home/blackoa/public_html/classes/lib/test.lang)[function.unlink]:第41行的/home/blackoa/public_html/modules/lang_manage/main.php中没有这样的文件或目录 但是文件确实被删除了 以下是特定函数的php代码: function delete_lang_f

我正在使用php函数unlink(),正如您最可能假设的那样,但它似乎给了我一个假阴性。。。它给了我这样的警告:

警告:取消链接(/home/blackoa/public_html/classes/lib/test.lang)[function.unlink]:第41行的/home/blackoa/public_html/modules/lang_manage/main.php中没有这样的文件或目录

但是文件确实被删除了

以下是特定函数的php代码:

function delete_lang_file($file){
   if(preg_match('#\.lang#', $file) && !preg_match('#blank\.lang#', $file)){
        unlink(CLASSES_PATH."lib/".$file);
   }
}
执行此函数时没有现有的文件处理程序,但是在执行unlink()时从未调用的其他函数中使用了file_get_contents()和fopen()fwrite()和fclose()集

有没有什么我做错了,可能是正斜杠而不是反斜杠

谢谢


Fraser K

是什么让你认为它被删除了?正如Wooble提到的,在你打电话取消链接之前,你绝对确定该文件存在吗?来自取消链接的此错误消息通常不存在。如果(file_exists()){}围绕取消链接,则可能会将其换行。并在需要时记录它正在执行的操作。中的脚本允许您查看、创建、编辑和删除.lang文件。如果php没有读取一个文件,您可以选择是否删除它,因为我正在使用目录读取函数列出所有文件,然后您可以选择是否删除它。我还检查了文件在“删除”之前和之后是否存在。是的,它在前面存在,不在后面不存在。检查是否有东西可能调用delete_lang_file()两次(: