从 linux 命令行检查有效的 docx
check valid docx from linux command line
我在 php 脚本中生成 docx 文件,但有时它们已损坏。服务器不知道,它 returns 向用户提供 docx 文件,他发现它已损坏,造成非常糟糕的体验。
有人有办法在 docx 损坏时检查 linux cli 吗?所以我可以更有弹性,尝试修复它或给用户一个适当的回应。
现在我正在试验:
libreoffice --headless --convert-to html corrupted.docx
但如果文件没有损坏,大多数情况下,它会增加响应时间。
您可以使用 this corrupted file
进行调试
您可以调用 PHP 脚本打开文档 PHPWord which can report on success for failure. See this example:
include_once 'Sample_Header.php';
// Read contents
$name = basename(__FILE__, '.php');
$source = __DIR__ . "/resources/{$name}.docx";
echo date('H:i:s'), " Reading contents from `{$source}`", EOL;
$phpWord = \PhpOffice\PhpWord\IOFactory::load($source);
return $phpWord instanceof PhpOffice\PhpWord\PhpWord;
我在 php 脚本中生成 docx 文件,但有时它们已损坏。服务器不知道,它 returns 向用户提供 docx 文件,他发现它已损坏,造成非常糟糕的体验。
有人有办法在 docx 损坏时检查 linux cli 吗?所以我可以更有弹性,尝试修复它或给用户一个适当的回应。
现在我正在试验:
libreoffice --headless --convert-to html corrupted.docx
但如果文件没有损坏,大多数情况下,它会增加响应时间。
您可以使用 this corrupted file
进行调试您可以调用 PHP 脚本打开文档 PHPWord which can report on success for failure. See this example:
include_once 'Sample_Header.php';
// Read contents
$name = basename(__FILE__, '.php');
$source = __DIR__ . "/resources/{$name}.docx";
echo date('H:i:s'), " Reading contents from `{$source}`", EOL;
$phpWord = \PhpOffice\PhpWord\IOFactory::load($source);
return $phpWord instanceof PhpOffice\PhpWord\PhpWord;