• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 323
  • Last Modified:

Check to see if file is corrupt

I have a PDF I am creating using TCPDF then saving to a temp pdf file. I am then sending out the PDF via mailer class. 1 out of 50 files or so send a corrupt file. Is there a way to test a stored PDF to see if the document is not corrupt?
0
nbcit
Asked:
nbcit
  • 2
  • 2
1 Solution
 
EMB01Commented:
Notice the following code simply tries to read the file and if an error occurs (because it's corrupt) PHP returns false and the $error is set.
<?php
$file = fopen("welcome.txt", "r") or exit("Unable to open file!");
if ($file == FALSE) {
$error = 1;
}
//Output a line of the file until the end is reached
while(!feof($file))
  {
  echo fgets($file). "<br />";
  }
fclose($file);
?>

Open in new window

0
 
nbcitAuthor Commented:
So the error would occur at fopen and then it will return false.
<?php
$file = fopen($pdf_path, "r");
if ($file === false) die('this is an error');
fclose($pdf_path);
?>

Open in new window

0
 
EMB01Commented:
I believe so. You may also want to check this out if you are creating PDF files that are corrupt. It seems you must use the -b flag for Windows...
http://bugs.php.net/bug.php?id=21904
0
 
nbcitAuthor Commented:
It turns out that if I unlink the file prior to file_put_contents the files come out perfect. Thank you.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now