【发布时间】:2012-07-09 09:53:58
【问题描述】:
我有一个用于以文本形式存储数据的网站(在获取 db 之前),所以现在我在删除文件时遇到了问题...
该文件的名称中有一个单引号字符,(“I'mHere.txt”),站点文件管理器无法删除此文件,而且它越来越烦人......所以我尝试删除它像这样的php:
<?php
unlink("I'mHere.txt");
unlink("I\'mHere.txt");
?>
它们都不起作用,我该怎么做才能删除文件?
编辑: 文件是这样创建的:
$file=fopen($sentence.'.txt',"w");
fwrite($file,$cont);
fclose($file);
编辑2:我从另一个文件中调用删除代码,不再创建带引号的文件,它就在那里,不能以任何方式删除,尝试这会导致“找不到文件”错误(路径正确,它适用于任何没有引号的文件)...
【问题讨论】:
-
首先,您不必转义 '。其次,您确定您有权删除该文件吗?扭转错误并确保你做到了。
-
可能是用户权限问题。激活显示错误消息并检查您的 error_log 文件。
-
路径是否正确? file_exists 是怎么说的?
-
要删除文件,您需要对父目录具有写入权限。你的脚本有这个权限吗?你确定路径正确吗?服务器端脚本中的相对路径并不总是指向您认为的位置
-
是的,毕竟文件是使用我的 php 脚本创建的:P
标签: php file quotes delete-file unlink