如何使用PHP打开/解密受密码保护的单词文件(docx)

时间:2018-07-25 07:12:44

标签: php encryption ms-word passwords docx

我正在尝试使用PHP以编程方式打开文字文件(.docx)。此字文件受密码保护和加密,因此如果不提供密码,则无法显示其内容。我当然知道密码。

但是我如何通过提供密码来使用PHP打开此字文件?

唯一至少提及密码保护的PHP库是出色的PhpOffice / PhpWord-但它不支持打开受密码保护的文件:https://github.com/PHPOffice/PHPWord/issues/357

请注意,防止不必要的更改的密码保护与防止这种情况(防止未经授权的打开)之间存在细微差别。

TIA

1 个答案:

答案 0 :(得分:1)

欢迎您查看我的 PHPDecryptXLSXWithPassword 存储库。

先用密码解密文件,然后用PHPWord使用解密后的文件。

这是一个例子:

require_once('PHPDecryptXLSXWithPassword.php');

$encryptedFilePath = '../path/to/encrypted/file.docx';
$password = 'mypassword'; // password to "open" the file
$decryptedFilePath = '../path/to/decrypted/file.docx';

decrypt($encryptedFilePath, $password, $decryptedFilePath);

// now you can use PHPWord with $decryptedFilePath

注意:这是一个实验性代码,因此请谨慎使用。请勿在生产中使用!