$position=strpos($row["f_Subject"],"=");
if(strlen($position)==1){
//先判断是否存在=?xxxx?B?这种格式
if(preg_match("/=\?[\w-]+\?B\?/",$row["f_Subject"])){
//echo "如果存在先把编码取出";
//preg_match_all ("|<[^>]+>(.*)</[^>]+>|U",
//"<b>example: </b><div align=left>this is a test</div>",
//$out, PREG_PATTERN_ORDER);
//print $out[0][0].", ".$out[0][1]."\n";
//print $out[1][0].", ".$out[1][1]."\n";
preg_match_all("/=\?([\w-]+)\?B\?(.*)\?=+/",$row["f_Subject"],$contentArr,PREG_PATTERN_ORDER);
//echo "length=====".count($contentArr)."<br>";
//echo "content1==".$contentArr[0][0]."<br>";//=?utf-8?B?
//echo "content2==".$contentArr[1][0]."<br>";//utf-8
//echo PREG_PATTERN_ORDER."<br>";//1
for($n=0;$n<count($contentArr[0]);$n++){
//echo "0000=".$contentArr[2][$n]."<br>";
//echo "1111=".$contentArr[1][$n]."<br>";
$tem_subject=base64_decode($contentArr[2][$n]);
if($contentArr[1][$n]=="utf-8"){
echo $tem_subject;
}else if($contentArr[1][$n]=="big5"){
//echo "big5===".$tem_subject;
$tem_subject=iconv("big5","utf-8",$tem_subject);
echo $tem_subject;
}else{
$tem_subject=iconv("gbk","utf-8",$tem_subject);
echo $tem_subject;
}
}
}else{
//echo "dddd5";
//echo $row["f_Subject"]."<br><br>";
//if(ereg('/=\?[\w-]+\?B\?.*=*\?=+/',$row["f_Subject"])){
//preg_match_all ('/=\?[\w-]+\?B\?.*=*\?=+/',$row["f_Subject"],$matchs);
//echo count($matchs[0]);
//for($k=0;$k<count($matchs[0]);$k++){
//echo $matchs[0][$k]."jjjj<br><br>";
//$tem_subject = preg_replace('/=\?[\w-]+\?B\?/','',$matchs[0][$k]);
//$tem_subject = preg_replace('/\?=+/','',$tem_subject);
//echo $tem_subject;
//$tem_subject=base64_decode($tem_subject);
//echo $tem_subject;
//}
//}
if(preg_match('/=\?[\w-]+\?Q\?.*=*\?=+/',$row["f_Subject"])){
//echo "ddd6";
preg_match_all ('/=\?([\w-]+)\?Q\?(.*:_)*(.*)\?=+/',$row["f_Subject"],$matchs);
for($k=0;$k<count($matchs[0]);$k++){
//$tem_subject = preg_replace('/=\?[\w-]+\?Q\?(.*:_)*/','',$matchs[0][$k]);
//$tem_subject = preg_replace('/\?=+/','',$tem_subject);
echo $matchs[3][$k];
}
}else{
echo $row["f_Subject"];
}
}
}else{
if($row["f_Subject"]==""){
echo "Subject: Blank";
}else{
echo $row["f_Subject"];
}
}
分享到:
相关推荐
通过以上步骤,新手可以构建一个基本的PHP邮件解析器。不过,实际项目中可能还需要处理更多细节,比如编码问题、垃圾邮件过滤、多语言支持等。不断实践和学习,才能更好地驾驭这个领域。希望这个教程能为你打开一扇...
标题中的“一个PHP邮件mime解析器”指的是使用PHP语言实现的一个功能模块,专门用于解析遵循MIME标准的电子邮件。MIME(Multipurpose Internet Mail Extensions)是互联网标准,它扩展了电子邮件标准,允许发送非...
从标签“类库下载-邮件回复解析器的PHP库”我们可以推断,这个库提供了一个下载链接,使得开发者可以直接将其引入到自己的项目中,无需从零开始编写邮件解析的代码。 在压缩包文件名称“EmailReplyParser-master”...
若要处理更复杂的邮件格式,可能需要结合其他PHP邮件处理库,如PHPMailer或SwiftMailer。 总的来说,EmailReplyParser是PHP开发中处理电子邮件回复的强大工具,它简化了从杂乱的邮件回复中提取关键信息的过程。通过...
EML文件包含邮件的全部内容,如发件人、收件人、主题、日期以及邮件正文。此外,它还可以包含一个或多个附件。 在PHP中,我们可以使用一些内置的函数或者第三方库来解析EML文件。一个常见的库是PHPMailer,但在这个...
"二维码解析php类库"是一个专门针对这一需求开发的工具,它允许开发者通过PHP轻松地读取和解析二维码数据。 二维码(Quick Response Code)是一种二维条码,由黑白相间的模块组成,可以存储大量的信息,如文本、...
6. **邮件解析**:解析邮件内容需要理解MIME(Multipurpose Internet Mail Extensions)格式,这是邮件的标准编码方式。PHP提供了一些函数如`imap_fetchstructure()`和`imap_fetchbody()`来帮助解析邮件的结构和内容...
为了提高邮件发送的成功率,可以考虑使用如PHPMailer、SwiftMailer等成熟的PHP邮件发送库,它们提供了丰富的功能,包括错误处理、SMTP支持、SSL/TLS加密等,使得邮件发送更加稳定可靠。 总之,通过使用适当的PHP...
PHPMailer是一个流行的PHP邮件发送库,支持HTML邮件、附件、SMTP验证等功能。要使用PHPMailer,首先需要下载库文件并引入到项目中。然后创建一个PHPMailer实例,设置发件人、收件人、邮件主题和内容,最后调用`send...
3. **PHPMailer库**:这是一个流行的PHP邮件发送库,它支持SMTP认证,可以轻松地添加附件,处理HTML邮件,并且提供了错误处理机制。安装并使用PHPMailer可以让开发者快速实现邮件发送功能。 4. **MIME编码**:在...
1. **邮件头解析**:邮件头包含了发件人、收件人、主题等信息。类可能提供了方法来解析这些信息,并将它们转化为PHP数组或其他易于操作的格式。 2. **MIME层次结构处理**:邮件可能包含多个MIME部分,每个部分有...
EmailReplyParser EmailReplyParser是一个用于解析纯文本电子邮件内容PHP库,基于GitHub上用Ruby编写的email_reply_parser库。 安装安装EmailReplyParser的推荐方法是通过Composer:compose EmailReplyParser ...
经过全面测试PHP 7.2+电子邮件解析器( 包装器)。 就性能,外来字符编码,附件处理和易用性而言,它是最有效的php电子邮件解析器。 Internet邮件格式RFC , , 。 为什么? 此扩展名可用于... 解析并阅读来自...
源码含:替换系统、计费系统、客户端源码,安装云海解析计费系统需 PHP7 以上 测试环境:宝塔控制面板+PHP7.4+Nginx 1.18.0+MySQL 5.6.50+phpMyAdmin 4.9+Redis 6.2.1 特别注意:设置完之后配置一下网站后台的邮件...
【标题解析】:“php邮件群发管理系统源码.rar”这个标题明确指出,这是一个基于PHP语言开发的用于邮件群发管理的系统源代码。PHP是一种广泛使用的开源脚本语言,尤其适用于Web开发,可以嵌入到HTML中。邮件群发管理...
本篇文章将详细解析如何利用PHPMailer这一强大的辅助类来实现服务器端发送邮件的功能。 #### 二、PHPMailer简介 PHPMailer 是一个全功能的 PHP 邮件发送类库,支持多种邮件发送方式(包括SMTP),并可以发送HTML...
本文将深入讲解如何使用PHP结合POP3协议来收取邮件,并以提供的类文件`pop3.class.inc`和示例文件`pop3_test.php`为基础进行解析。 首先,我们需要了解`pop3.class.inc`这个类文件。通常,这是一个封装了POP3连接、...
通过监听Webhook,当Postmark接收到新邮件时,会触发回调到你指定的URL,然后Postmark-PHP库可以解析并处理这些邮件数据。 6. **错误处理和日志**: 库内包含了完善的错误处理机制,当发送或接收邮件过程中遇到问题...
在电子邮件收发系统中,PHP将处理与邮件服务器的交互,构建和解析邮件头,以及处理用户界面逻辑。 **2. 邮件协议理解** - **SMTP(Simple Mail Transfer Protocol)**:这是用于发送邮件的主要协议。PHP中的`mail()...
### Postfix邮件服务器配置详解与错误解析 #### 一、所需软件 为了搭建Postfix邮件服务器,我们需要准备一系列软件,并确保它们能够协同工作。以下是所需的软件列表及其在邮件服务器中的作用: 1. **CentOS 5.6**...