我正在使用codeigniter 3.1.4。我正在尝试删除根目录下的文件夹中的文件。当我使用unlink函数时
$path=base_url()."files/image.jpg";
unlink($path);
我收到了以下错误:
A PHP Error was encountered
Severity: Warning
Message: unlink(): http does not allow unlinking
Filename: controllers/Deletion.php
Line Number: 12
Backtrace:
File: C:\xampp\htdocs\deletiontesting\application\controllers\Deletion.php
Line: 12
Function: unlink
File: C:\xampp\htdocs\deletiontesting\index.php
Line: 315
Function: require_once
当我将文件助手用于此目的时
$this->load->helper('file');
$path=base_url()."files/image.jpg";
delete_files($path);
文件未删除。文件名是image.jpg文件夹名是文件 。请帮我删除那个文件
答案 0 :(得分:2)
使用FCPATH
$path = FCPATH . "/files/image.jpg";
unlink($path);
答案 1 :(得分:2)
你在使用base_url给路径取消链接的路径时不要使用base_url
$path="../files/image.jpg";
unlink($path);
这对我来说总是有用,它必须适合您的代码。
如果unlink($path);
出错,请尝试@unlink($path);
我希望这对你有用
答案 2 :(得分:1)
'Message: unlink(): http does not allow unlinking'
使用__DIR__
访问该文件,然后在路径中使用http进行取消链接,并且不允许删除此类文件。
答案 3 :(得分:1)
如果您的codeigniter在服务器根目录中,您可以使用:
$path= $_SERVER['DOCUMENT_ROOT']."/"."files/image.jpg";
如果你有一个子文件夹:
$path= $_SERVER['DOCUMENT_ROOT']."/subfolder_name/"."files/image.jpg";
答案 4 :(得分:1)
如果您的文件夹存在于Application文件夹中,则使用APPPATH,如下所示:
$path = APPPATH . '/files/image.jpg'; //to set file path
unlink($path);