繁体   English   中英

如何在codeigniter中获取上传文件的完整路径?

[英]How to get full path of the uploaded file in codeigniter?

我正在使用codeIgniter文件上传类示例https://www.codeigniter.com/user_guide/libraries/file_uploading.html上传文件。 在我上传文件后的示例中,它将在上传成功视图页面中显示如下所示的详细信息。

 Array
(
[upload_data] => Array
    (
        [file_name] => VenkataKrishna10.pdf
        [file_type] => application/pdf
        [file_path] => C:/xampp/htdocs/upload/application/
        [full_path] => C:/xampp/htdocs/upload/application/VenkataKrishna10.pdf
        [raw_name] => VenkataKrishna10
        [orig_name] => VenkataKrishna.pdf
        [client_name] => VenkataKrishna.pdf
        [file_ext] => .pdf
        [file_size] => 83.27
        [is_image] => 
        [image_width] => 
        [image_height] => 
        [image_type] => 
        [image_size_str] => 
    )

 )

之后,我尝试以数组格式查看整个上传的数据。 我的问题是如何从上述数组获取完整的文件路径。 我知道有一个变量full_path但是我无法获取它。 请帮我。

试试这样:

         if ( ! $this->upload->do_upload())
        {
            $error = array('error' => $this->upload->display_errors());

        }
        else
        {
            $data = $this->upload->data();
                    // $data will contain full inforation
                    echo "Full path is:". $data['full_path'];

        }

从您的控制器使用

echo $data['upload_data']['full_path'];

从您的角度来看

echo $upload_data['full_path'];

从您的帖子中,我假设您已经从print_r提供了某个变量的输出,例如$file_detail

如果要从$file_detail获取$file_detail ,则必须使用

$file_detail['upload_data']['full_path']

成功上传后将返回该数组,您只需要检索索引键即可:

控制器:

if ( ! $this->upload->do_upload())
{
     $data['error'] = $this->upload->display_errors();
}
else
{
   $data['upload_data'] = $this->upload_data();
}
$this->load->view('myview', $data);

myview.php

<p>Full path: <?php echo $upload_data['full_path'];?></p>

如果要在插入数据库后从上传中删除文件,可以使用unlink($ filename)从上传中删除文件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM