×
INTELLIGENT WORK FORUMS
FOR COMPUTER PROFESSIONALS

Log In

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

Jobs

Piping email to PHP - how does PHP read STDIN?

Piping email to PHP - how does PHP read STDIN?

Piping email to PHP - how does PHP read STDIN?

(OP)
We pipe incoming email through a PHP script for distribution in our CMS. After processing, we save the raw mail to the filesystem for later debugging, if necessary.

Occasionally, PHP will miss a mail attachment and complain that it can't be found, but if we run the mail parser on the saved raw mail ($mail_text in the code below), it finds the attachment just fine.

This has me wondering if maybe PHP isn't reading in the entire piped email before it tries to process it? Here's how we're reading STDIN and assigning it to a variable:

CODE

$fd = fopen("php://stdin", "r");
$mail_text = "";
while(!feof($fd))
{
  $mail_text .= fread($fd, 1024);
}

fclose($fd); 

Can anyone see a scenario where that while loop wouldn't read the whole mail before proceeding to the rest of the code?

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Tek-Tips Forums free from inappropriate posts.
The Tek-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Tek-Tips forums is a member-only feature.

Click Here to join Tek-Tips and talk with other members!

Close Box

Join Tek-Tips® Today!

Join your peers on the Internet's largest technical computer professional community.
It's easy to join and it's free.

Here's Why Members Love Tek-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close