调用未定义的方法 PhpOffice\PhpSpreadsheet\Spreadsheet::listWorksheetNames
Call to undefined method PhpOffice\PhpSpreadsheet\Spreadsheet::listWorksheetNames
我想列出工作簿中的所有工作表名称,但出现以下错误:
Call to undefined method PhpOffice\PhpSpreadsheet\Spreadsheet::listWorksheetNames()
这是我的代码:
<?php
require_once('vendor/autoload.php');
use PhpOffice\PhpSpreadsheet\Reader\Xlsx;
use PhpOffice\PhpSpreadsheet\IOFactory;
$inputFileName = 'uploads/1.xlsx';
$spreadsheet = IOFactory::load($inputFileName);
$worksheetNames = $spreadsheet->listWorksheetNames();
echo '<h3>Worksheet Names</h3>';
echo '<ol>';
foreach ($worksheetNames as $worksheetName) {
echo '<li>', $worksheetName, '</li>';
}
echo '</ol>';
?>
我的错误在哪里?
尝试将第 8 行更改为 $spreadsheet = IOFactory::createReader($inputFileName);
。
如果您查看文件 IOFactory#L61,您将能够注意到 createReader
returns a Reader\IReader对象。
另一方面,函数 load
在 the same file returns 一个 电子表格 对象。
函数 listWorksheetNames
属于 Readers,如您所见,例如,在 Reader/Xlsx.php.
简单地说:您只能在 Reader 对象上调用 listWorksheetNames
。
我想列出工作簿中的所有工作表名称,但出现以下错误:
Call to undefined method PhpOffice\PhpSpreadsheet\Spreadsheet::listWorksheetNames()
这是我的代码:
<?php
require_once('vendor/autoload.php');
use PhpOffice\PhpSpreadsheet\Reader\Xlsx;
use PhpOffice\PhpSpreadsheet\IOFactory;
$inputFileName = 'uploads/1.xlsx';
$spreadsheet = IOFactory::load($inputFileName);
$worksheetNames = $spreadsheet->listWorksheetNames();
echo '<h3>Worksheet Names</h3>';
echo '<ol>';
foreach ($worksheetNames as $worksheetName) {
echo '<li>', $worksheetName, '</li>';
}
echo '</ol>';
?>
我的错误在哪里?
尝试将第 8 行更改为 $spreadsheet = IOFactory::createReader($inputFileName);
。
如果您查看文件 IOFactory#L61,您将能够注意到 createReader
returns a Reader\IReader对象。
另一方面,函数 load
在 the same file returns 一个 电子表格 对象。
函数 listWorksheetNames
属于 Readers,如您所见,例如,在 Reader/Xlsx.php.
简单地说:您只能在 Reader 对象上调用 listWorksheetNames
。