まず、PHPExcelライブラリを使用してパスワード保護を実装する方法です。以下のコードスニペットを使用すると、スプレッドシートをパスワードで保護することができます。
require 'PHPExcel.php';
$objPHPExcel = new PHPExcel();
$objPHPExcel->getActiveSheet()->setTitle('Sheet1');
// パスワードを設定する
$objPHPExcel->getSecurity()->setLockPassword('password');
// パスワード保護を有効にする
$objPHPExcel->getSecurity()->setLockWindows(true);
$objPHPExcel->getSecurity()->setLockStructure(true);
// スプレッドシートを保存する
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('protected_spreadsheet.xlsx');
上記の例では、PHPExcelライブラリを使用してスプレッドシートを作成し、setLockPassword()
メソッドを使用してパスワードを設定しています。setLockWindows()
とsetLockStructure()
メソッドは、ウィンドウやセルの保護を有効にするために使用されます。
また、次のコードスニペットでは、PhpSpreadsheetライブラリを使用してパスワード保護を実装する方法を示しています。
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
// パスワードを設定する
$sheet->getProtection()->setPassword('password');
// パスワード保護を有効にする
$sheet->getProtection()->setSheet(true);
$writer = new Xlsx($spreadsheet);
$writer->save('protected_spreadsheet.xlsx');
上記の例では、PhpSpreadsheetライブラリを使用してスプレッドシートを作成し、setPassword()
メソッドを使用してパスワードを設定しています。setSheet()
メソッドは、シート全体を保護するために使用されます。
これらの例を参考にしながら、PHPスプレッドシートのパスワード保護を実装してみてください。