• 首页
  • css3教程
  • html5教程
  • jQuery手册
  • php7教程
  • MySQL手册
  • apache手册
  • 位置: php7教程 -> PECL扩展库

    Mailparse(邮件解析)

    此 PECL 扩展未与 PHP 捆绑。 安装此 PECL 扩展相关的信息可在手册中标题为 PECL 扩展的安装章节中找到。更多信息如新的发行版本、下载、源文件、 维护人员信息及变更日志等,都在此处: https://pecl.php.net/package/mailparse.

    为了使用这些函数,必须使用--enable-mailparse编辑选项。Windows用户使用php_mailparse.dllPECL 扩展的 DLL 当前不可用。参见 在 Windows 上构建章节。

    必须在mailparse之前加载mbstring扩展

    [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>";;
    }
    ?>