如何使用phpspreadsheet锁定特定单元格

时间:2019-03-13 09:00:09

标签: phpspreadsheet phpoffice

最初,工作表中的所有单元格都被锁定。然后,我解锁所有单元并尝试仅锁定某些单元。

$spreadsheet->getActiveSheet()->getStyle('A1')->getLocked()->applyFromArray(
      [
          'locked' => TRUE,
          'hidden' => FALSE
     ]);

但是,最终出现此错误。

  

未捕获的错误:调用未定义的方法PhpOffice \ PhpSpreadsheet \ Style \ Style :: getLocked()

谢谢。

1 个答案:

答案 0 :(得分:0)

此代码能够锁定我们想要的单元格。

$sheet->getStyle('A1')->getProtection()->setLocked(\PhpOffice\PhpSpreadsheet\Style\Protection::PROTECTION_INHERIT);

 $sheet->getStyle('A1')->getProtection()->setLocked(\PhpOffice\PhpSpreadsheet\Style\Protection::PROTECTION_PROTECTED);

还是,我想知道为什么applyFromArray无法锁定单元格。任何人都知道答案,可以发表您的答案。谢谢。