Mailparse 函数

目录

添加注释

用户贡献的注释 3 个注释

7
boris at gamate dot com
20 年前
处理来自变量的邮件内容的示例

<?php

$buffer
= [...] // 来自管道或其他地方的邮件内容

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

?>
4
iwarner at triangle-solutions dot com
20 年前
另外,不要忘记在加载 mailparse 之前加载 mbstring

在 php.ini 中按此顺序放置示例

extension=php_mbstring.dll
extension=php_mailparse.dll

否则你会得到一个错误。

伊恩
4
wberrier at yahoo dot com
22 年前
[作者注
4.2.x 的 tarball 可以在这里找到
http://thebrainroom.com/opensource/php/mailparse.php
并且包含一个名为 try.php 的脚本,它演示了这些函数的用法。
]

我在下面粘贴了文件的内容

<?php
/*
* 这是一个简单的电子邮件查看器。
* 确保 $filename 指向包含电子邮件消息的文件,并且
* 在您的浏览器中加载此页面。
* 您将能够选择一个部分进行查看。
* */

$filename = "uumsg";

/* 解析消息并返回 MIME 消息资源 */
$mime = mailparse_msg_parse_file($filename);
/* 返回消息部分的数组 - 这只包含部分的名称
* 而已 */
$struct = mailparse_msg_get_structure($mime);

echo
"<table>\n";
/* 打印部分选择 */
foreach($struct as $st) {
echo
"<tr>\n";
echo
"<td><a href=\"$PHP_SELF?showpart=$st\">$st</a></td>\n";
/* 获取消息资源的句柄,用于子部分 */
$section = mailparse_msg_get_part($mime, $st);
/* 获取该部分的 content-type、编码和标题信息 */
$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 ($showpart) {
/* 获取消息资源的句柄,用于所需部分 */
$sec = mailparse_msg_get_part($mime, $showpart);

echo
"<table border=1><tr><th>Section $showpart</th></tr><tr><td>";
ob_start();
/* 从消息文件提取部分并将其转储到输出缓冲区

* */
mailparse_msg_extract_part_file($sec, $filename);
$contents = ob_get_contents();
ob_end_clean();
/* 为了在浏览器中安全显示而对消息进行引用 */
echo nl2br(htmlentities($contents)) . "</td></tr></table>";;
}
?>
To Top