PHP'nin Mailparse pecl uzantısını kullanmak için nasıl rehberlik arıyorum. documentation PHP Web sitesinde çok yararlı değildir.
Herkes bu deneyimi var ve birkaç işaretçiler paylaşmak ister mi?
PHP'nin Mailparse pecl uzantısını kullanmak için nasıl rehberlik arıyorum. documentation PHP Web sitesinde çok yararlı değildir.
Herkes bu deneyimi var ve birkaç işaretçiler paylaşmak ister mi?
Sen PECL irtibata olabilir mailparse package maintainers.
README file that comes with the extension yararlı bulduğum şu OO örneği de dahil olmak üzere ek belgeler vardır.
<?php
$file = "/path/to/rfc822/compliant/message";
// parse the message in $file.
// The file MUST remain in existence until you are finished using
// the object, as mailparse does not cache the file in memory.
// You can also use two alternative syntaxes:
//
// Read the message from a variable:
// $msg =& new MimeMessage("var", $message);
//
// Read the message from a stream (from fopen).
// The stream MUST be seekable, or things will not work correctly.
// Also, you MUST NOT fclose the stream until you have finished
// using the message object (or any child objects it returns).
// $msg =& new MimeMessage("stream", $fp);
//
$msg =& new MimeMessage("file", $file);
// Process the message.
display_part_info("message", $msg);
// Little function to display things
function display_part_info($caption, &$msgpart)
{
echo "Message part: $caption\n";
// The data member corresponds to the information
// available from the mailparse_msg_get_part_data function.
// You can access a particular header like this:
// $subject = $msgpart->data["headers"]["subject"];
var_dump($msgpart->data);
echo "The headers are:\n";
// Display the headers (in raw format) to the browser output.
// You can also use:
// $msgpart->extract_headers(MAILPARSE_EXTRACT_STREAM, $fp);
// to write the headers to the supplied stream at it's current
// position.
//
// $var = $msgpart->extract_headers(MAILPARSE_EXTRACT_RETURN);
// to return the headers in a variable.
$msgpart->extract_headers(MAILPARSE_EXTRACT_OUTPUT);
// Display the body if this part is intended to be displayed:
$n = $msgpart->get_child_count();
if ($n == 0) {
// Return the body as a string (the MAILPARSE_EXTRACT parameter
// acts just as it does in extract_headers method.
$body = $msgpart->extract_body(MAILPARSE_EXTRACT_RETURN);
echo htmlentities($body);
// This function tells you about any uuencoded attachments
// that are present in this part.
$uue = $msgpart->enum_uue();
if ($uue !== false) {
var_dump($uue);
foreach($uue as $index => $data) {
// $data => array("filename" => "original filename",
// "filesize" => "size of extracted file",
// );
printf("UUE[%d] %s (%d bytes)\n",
$index, $data["filename"],
$data["filesize"]);
// Display the extracted part to the output.
$msgpart->extract_uue($index, MAILPARSE_EXTRACT_OUTPUT);
}
}
} else {
// Recurse and show children of that part
for ($i = 0; $i < $n; $i++) {
$part =& $msgpart->get_child($i);
display_part_info("$caption child $i", $part);
}
}
}
?>