我正在进行一个项目,我需要读取以表单形式发送的excel文件,然后从中提取数据。我正试图使用Phpsreadsheet库来实现此目的,但PhpsreadSheet库似乎无法识别该文件,并引发错误:该文件不存在。
$product_serial = $this->input->post('product_serial');
$excelFilePath = base_url().'userfiles/product/excelfiles/'.$product_serial;
try {
$reader = PhpOfficePhpSpreadsheetIOFactory::createReaderForFile($excelFilePath);
$spreadSheet = $reader->load($excelFilePath);
$dataAsAssocArray = $spreadSheet->getActiveSheet()->toArray();
}
catch (Exception $exception){
echo $exception->getMessage();
}
错误:文件;http://localhost:8000/userfiles/product/excelfiles/452260670768Untitledspreadsheet.xlsx"不存在
我已经检查了上面位置的文件,文件确实存在!
Codeigner从文件系统读取文件,因此您必须使用PATH而不是URL。
实际上,您使用的是URL:
base_url().'userfiles/product/excelfiles/'.$product_serial;
你需要从FCPATH
构建你的路径
FCPATH.'userfiles/product/excelfiles/'.$product_serial;
有关代码点火器常数的更多信息,请点击以下链接
https://codeigniter.com/user_guide/general/common_functions.html?#global-常数
Codeigniter-动态获取应用程序文件夹之外的相对/绝对路径