Funções de Mailparse

Índice

adicione uma nota

Notas Enviadas por Usuários (em inglês) 3 notes

up
4
boris at gamate dot com
21 years ago
Example how to handle mail content from a variable:<?php$buffer = [...] // Mail Content from pipe or whatever$mail = mailparse_msg_create();mailparse_msg_parse($mail,$buffer);$struct = mailparse_msg_get_structure($mail); foreach($struct as $st) {     $section = mailparse_msg_get_part($mail, $st);     $info = mailparse_msg_get_part_data($section);         print_r($info);}?>
up
3
iwarner at triangle-solutions dot com
21 years ago
Also dont forget to LOAD mbstring before you load mailparseexample in the php.ini place in this order:extension=php_mbstring.dllextension=php_mailparse.dllOr you will get an error.Ian
up
3
wberrier at yahoo dot com
23 years ago
[Authors note:
The tarball for 4.2.x can be found here:
http://thebrainroom.com/opensource/php/mailparse.php
and contains a script called try.php that demonstrates the usage of these functions.
]

I've pasted the contents of the file below:

<?php
/*
 * This is a simple email viewer.
 * make sure that $filename points to a file containing an email message and
 * load this page in your browser.
 * You will be able to choose a part to view.
 * */

$filename = "uumsg";

/* parse the message and return a mime message resource */
$mime = mailparse_msg_parse_file($filename);
/* return an array of message parts - this contsists of the names of the parts
 * only */
$struct = mailparse_msg_get_structure($mime);

echo "<table>\n";
/* print a choice of sections */
foreach($struct as $st) {
        echo "<tr>\n";
        echo "<td><a href=\"$PHP_SELF?showpart=$st\">$st</a></td>\n";
        /* get a handle on the message resource for a subsection */
        $section = mailparse_msg_get_part($mime, $st);
        /* get content-type, encoding and header information for that section */
        $info = mailparse_msg_get_part_data($section);
        echo "\n";
        echo "<td>" . $info["content-type"] . "</td>\n";
        echo "<td>" . $info["content-disposition"] . "</td>\n";
        echo "<td>" . $info["disposition-filename"] . "</td>\n";
        echo "<td>" . $info["charset"] . "</td>\n";
        echo "</tr>";
}
echo "</table>";

/* if we were called to display a part, do so now */
if ($showpart)  {
        /* get a handle on the message resource for the desired part */
        $sec = mailparse_msg_get_part($mime, $showpart);

        echo "<table border=1><tr><th>Section $showpart</th></tr><tr><td>";
        ob_start();
        /* extract the part from the message file and dump it to the output buff
er
         * */
        mailparse_msg_extract_part_file($sec, $filename);
        $contents = ob_get_contents();
        ob_end_clean();
        /* quote the message for safe display in a browser */
        echo nl2br(htmlentities($contents)) . "</td></tr></table>";;
}
?>
To Top