php*_*per 4 php regex pdf validation
我正在尝试实现一个功能,应该是检测 pdf 文件,它的内容是有效的还是无效的。使用以下脚本,我可以轻松检测文件是否为 pdf:
$info = pathinfo("test.pdf");
if ($info["extension"] == "pdf"){
echo "PDF file";
}
Run Code Online (Sandbox Code Playgroud)
现在我想检查文件扩展名 pdf 那么 pdf 文件的内容是否应该有效。
请告诉我如何检查 pdf 文件内容是否有效,未损坏或格式无效。
小智 10
pdf 文件的内容以%PDF -version no开头,因此首先使用以下脚本获取 pdf 文件的内容:
$filecontent = file_get_contents("test.pdf");
Run Code Online (Sandbox Code Playgroud)
之后使用以下正则表达式检查$filecontent变量以检测它的有效或无效格式:
if (preg_match("/^%PDF-1.5/", $filecontent)) {
echo "Valid pdf";
} else {
echo "In Valid pdf";
}
Run Code Online (Sandbox Code Playgroud)
注意: Pdf 版本可能不同,例如 1.0 、 1.5 、 1.7 等...在我的情况下它是 1.5 还要确保您已将上面的代码放在脚本/条件中(如果文件具有.pdf扩展名)。