删除codeigniter 3.1.4中的文件

时间:2017-05-25 07:52:15

标签: php codeigniter

我正在使用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文件夹名是文件 。请帮我删除那个文件

5 个答案:

答案 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);