使用php 电子表格
有没有办法用密码保护 Excel 工作表,使用户在没有密码的情况下无法阅读?
我知道您可以保护单元格或工作表不被写入,但我正在寻找一种方法来保护整个文件不被打开,一旦用户打开它,它将弹出“输入密码”屏幕
使用php 电子表格
有没有办法用密码保护 Excel 工作表,使用户在没有密码的情况下无法阅读?
我知道您可以保护单元格或工作表不被写入,但我正在寻找一种方法来保护整个文件不被打开,一旦用户打开它,它将弹出“输入密码”屏幕
在电子表格上设置安全性
Excel 提供 3 个级别的“保护”:
单元格:提供锁定/解锁单元格以及显示/隐藏内部公式的选项。设置文档安全性的示例:
$spreadsheet->getSecurity()->setLockWindows(true);
$spreadsheet->getSecurity()->setLockStructure(true);
$spreadsheet->getSecurity()->setWorkbookPassword("PhpSpreadsheet");
设置工作表安全性的示例:
$spreadsheet->getActiveSheet()->getProtection()->setPassword('PhpSpreadsheet');
$spreadsheet->getActiveSheet()->getProtection()->setSheet(true);
$spreadsheet->getActiveSheet()->getProtection()->setSort(true);
$spreadsheet->getActiveSheet()->getProtection()->setInsertRows(true);
$spreadsheet->getActiveSheet()->getProtection()->setFormatCells(true);
设置单元安全性的示例:
$spreadsheet->getActiveSheet()->
getStyle('B1')->
getProtection()->
setLocked(\PhpOffice\PhpSpreadsheet\Style\Protection::PROTECTION_UNPROTECTED);
如果您需要任何工作表保护功能,请确保启用工作表保护!这可以使用以下代码完成:
$spreadsheet->getActiveSheet()->getProtection()->setSheet(true);
在 Excel 2016 上(里程可能因版本而异)
打开您的电子表格并转到:
并输入密码,打开时会提示用户。