在PHP中,可以使用PHPExcel庫來操作Excel文件,包括加密和解密xlsx文件。以下是一個示例代碼來實現xlsx文件的加密和解密:
require_once 'PHPExcel/Classes/PHPExcel.php';
require_once 'PHPExcel/Classes/PHPExcel/IOFactory.php';
// 加密xlsx文件
$inputFileName = 'example.xlsx';
$outputFileName = 'encrypted_example.xlsx';
$password = 'password';
$excel = PHPExcel_IOFactory::load($inputFileName);
$excel->getSecurity()->setLockWindows(true);
$excel->getSecurity()->setLockStructure(true);
$excel->getSecurity()->setWorkbookPassword($password);
$writer = PHPExcel_IOFactory::createWriter($excel, 'Excel2007');
$writer->save($outputFileName);
echo 'File encrypted successfully';
// 解密xlsx文件
$inputFileName = 'encrypted_example.xlsx';
$outputFileName = 'decrypted_example.xlsx';
$password = 'password';
$excel = PHPExcel_IOFactory::load($inputFileName);
$excel->getSecurity()->setWorkbookPassword($password);
$writer = PHPExcel_IOFactory::createWriter($excel, 'Excel2007');
$writer->save($outputFileName);
echo 'File decrypted successfully';
在上面的示例中,首先加載要加密的xlsx文件,然后設置加密參數,并保存為新的加密文件。然后加載加密過的文件,設置解密參數,并保存為新的解密文件。
請注意,PHPExcel庫已經不再維護,推薦使用更現代的庫來操作Excel文件,如PhpSpreadsheet。