我已将 PHP 版本从 5.1.x 升级到 5.4.14,其中使用 PHPExcelReader 读取 excel 文件失败并出现以下警告。在早期版本中,它工作正常。
文件名 images_db/TempCountry.xlsx 不可读
演示的示例代码如下(它是Temp.php
)。
<?php
require_once 'phpExcelReader/Excel/reader.php';
if(isset($_POST['btnSubmit']))
{
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('CP1251'); // Set output Encoding.
move_uploaded_file($_FILES["xlfile"]["tmp_name"],"images_db/".$_FILES["xlfile"]["name"]);
$data->read('images_db/'.$_FILES["xlfile"]["name"]);
}
?>
<form action="Temp.php" id="dataForm" name="dataForm" method="post" enctype="multipart/form-data">
<input type="file" id="xlfile" name="xlfile">
<input type="submit" value="Submit" id="btnSubmit" name="btnSubmit">
</form>
当按下给定的提交按钮时,首先将excel文件上传到images_db/
成功的目录中,在哪个地方,以下行,
$data->read('images_db/'.$_FILES["xlfile"]["name"]);
预计会读取此文件,但它会发出上述警告。
在reader.php
文件中,以下行,
$this->_ole =& new OLERead();
已更改为
$this->_ole = new OLERead();
以避免出现以下警告。
不推荐使用:在第 261 行的 C:\wamp\www\wagafashion\phpExcelReader\Excel\reader.php 中不推荐使用通过引用分配 new 的返回值
为什么 PHPExcelReader 在这个新版本的 PHP 中不能读取 excel 文件(既不是 xls 也不是 xlsx)?它与版本有关系吗?