文件上传时数组到字符串的转换错误,显示错误但不显示成功数据

时间:2019-02-13 18:53:16

标签: codeigniter-3

我的代码在上载失败时工作正常,但在上载成功时将错误作为未定义变量:数据抛出。谁能帮我传递成功数据以查看

public function index()
{
    $this->load->view('Pdf', array('error' => ' ' ));
}

public function do_upload()
{
    if($this->upload->do_upload())
    {
        $data['success']= $this->upload->data();
    }
    else
    {
        $data['error'] =  $this->upload->display_errors();
    }
}

视图:

 <?php echo $error;?>
 <?php echo $data["file_name"];?>

1 个答案:

答案 0 :(得分:0)

使用$this->upload->data()上传时,结果获取数组,而不是变量或字符串。

例如,下面是图像上传的结果数组。

Array
(
    [file_name] => 
    [file_type] => 
    [file_path] => 
    [full_path] => 
    [raw_name] => 
    [orig_name] => 
    [client_name] => 
    [file_ext] => 
    [file_size] => 
    [is_image] => 
    [image_width] => 
    [image_height] => 
    [image_type] => 
    [image_size_str] => 
)

在这里,您将使用echo而不是print_r打印一个数组。

echo 用于提供输出数据。

print_r 用于打印阵列。

因此,此“文件上传时数组到字符串转换错误”的解决方案是

更改echo $data["file_name"]; ==> print_r($data);print_r($data['success'])