/ / Jede gute Dokumentation / Tutorials für PHP MailParse pecl Erweiterung - PHP, E-Mail, Anhang, Pecl

Jede gute Dokumentation / Tutorials für PHP MailParse pecl Erweiterung - PHP, E-Mail, Anhang, Pecl

Ich bin auf der Suche nach Anleitungen zur Verwendung der MailParse pecl-Erweiterung von PHP. Das Dokumentation auf der PHP-Website ist nicht sehr hilfreich.

Hat jemand Erfahrung damit und darauf achten, ein paar Hinweise zu teilen?

Antworten:

3 für die Antwort № 1

Sie könnten den PECL kontaktieren Mailparse-Paketbetreuer.


3 für die Antwort № 2

Es gibt ergänzende Dokumentation in der README-Datei, die mit der Erweiterung geliefert wird einschließlich des folgenden OO-Beispiels, das ich hilfreich fand.

<?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: $captionn";

// 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);
}
}
}

?>