首页 > 解决方案 > 如何在不修剪的情况下获取所有工作表名称?

问题描述

我有工作表名称为 utf-8 的 excel 文件,并且我得到了修剪的工作表名称,因为此工作表标题超过 31 个字符。

我的代码:

<?php

use PhpOffice\PhpSpreadsheet\Reader\Xlsx;
use PhpOffice\PhpSpreadsheet\IOFactory;

$reader = IOFactory::createReader('Xlsx');
$reader->setReadDataOnly(TRUE);
$spreadsheet = $reader->load('/home/cool-file.xlsx');

$all = $spreadsheet->getSheetNames();

$all变量中,我得到了所有工作表名称的列表,但所有名称都被修剪了。

我试图评论这部分代码: https ://github.com/PHPOffice/PhpSpreadsheet/blob/develop/src/PhpSpreadsheet/Worksheet/Worksheet.php#L853-L882

但没有变化。

标签: phpspreadsheetphpoffice

解决方案


use PhpOffice\PhpSpreadsheet\Reader\Xlsx;
use PhpOffice\PhpSpreadsheet\IOFactory;

$reader = IOFactory::createReader('Xlsx');
$reader->setReadDataOnly(TRUE);
$spreadsheet = $reader->load('/home/cool-file.xlsx');

$all = $spreadsheet->getSheetNames()[1];

请注意括号和工作表的 ID


推荐阅读