[Zend Mail]发送中文名附件出现乱码解决方案

Zend Framework 1.0.*

“=?UTF-8?B?”.base64_encode($title).“?=”

发送中文名附件,结果如图:

英文名附件,结果截图:

解决办法就是将中文文件名拼接为““=?UTF-8?B?”.base64_encode($title).“?=”” , 然后发送即可。

    <?php      // Notice: Zend Mail 代码是基于 zend framework 1.0.* 版本,zend framework 2.0 中发生改变     $title = "【海那边】美国EB-5投资移民,佛州高铁项目资料";

        $line = "<h3>尊敬的客户:</h3>";
        $line .= ‘<p style="margin-left: 20px;">您好!这是美国EB-5投资移民,佛州高铁项目资料宣传册,请点击附件查看!</p>‘;
        $line .= ‘<p style="margin-left: 20px;">想了解佛州高铁项目更多信息,请致电4009-933-922咨询或访问。http://www.hinabian.com/project/detail.html?project_id=12021036</p>‘;
        $line .= ‘<p>seaside</p>‘;

        $attachName = DOC_ROOT . "/../config/log/佛州高铁宣传册.pdf";
        $fileName = "佛州高铁宣传册.pdf";
        $extraAttach = array(‘path‘ => DOC_ROOT . "/../config/log/美国EB5项目概要(佛州高铁).doc" , ‘file_name‘ => ‘=?UTF-8?B?‘.base64_encode(‘美国EB5项目概要(佛州高铁).doc‘).‘?=‘);
        Dg_Helper_Message::sendHomeEMail($email , $title , $line , true , $attachName , ‘=?UTF-8?B?‘.base64_encode($fileName).‘?=‘ , $extraAttach);

Zend Framewokr 2.0 中 zend mail 使用请参考链接:http://avnpc.com/pages/zf2-mail-advanced-usage-for-template-multi-attachment

Zend Framework Official Manual reference link: http://framework.zend.com/manual/current/en/modules/zend.mail.attachments.html

时间: 2024-08-27 02:37:08

[Zend Mail]发送中文名附件出现乱码解决方案的相关文章

解决java mail发送TXT附件被直接显示在正文中的问题

这两天遇到一个问题,关于使用java mail发送邮件的问题. 详细是这样子的:我使用java mail发送异常报告邮件,邮件中有一个包含异常日志的附件,和关于设备信息的邮件正文.假设日志为log后缀名,那么在我的qq邮箱中显示正常.可是假设把附件的后缀名改为txt之后,就变成把附件中的内容直接显示在邮件正文中了.而我原来设置的邮件正文则不在了. 我的代码是这样写的: 加入附件: public void addAttachment(String filePath, String fileName

Java Mail 发送带有附件的邮件

1.小编用的是163邮箱发送邮件,所以要先登录163邮箱开启POP3/SMTP/IMAP服务方法: 2.下载所需的java-mail 包 https://maven.java.net/content/repositories/releases/com/sun/mail/javax.mail/ 3.贴上代码 package javamail; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; impor

Apache Mail 发送带附件的邮件

MultiPartEmail email = new MultiPartEmail(); email.setDebug(true); email.setHostName("smtp.sina.com"); email.setAuthentication("发送邮件帐号", "邮箱登录密码"); email.setCharset("UTF-8"); try { email.setFrom("发送邮件帐号",

用commons-email,javax.mail发送邮件,中文附件名乱码。

import java.io.UnsupportedEncodingException; import javax.mail.internet.MimeUtility; import org.apache.commons.mail.EmailAttachment; import org.apache.commons.mail.EmailException; import org.apache.commons.mail.MultiPartEmail; public class MailTest {

java mail邮件发送(带附件) 支持SSL

java mail邮件发送(带附件)有三个类 MailSenderInfo.java package mail; import java.util.Properties; import java.util.Vector; public class MailSenderInfo { // 发送邮件的server的IP和端口 private String mailServerHost; private String mailServerPort = "25"; // 邮件发送者的地址 pr

java mail邮件发送(带附件)

java mail邮件发送(带附件)有三个类 MailSenderInfo.java package mail; import java.util.Properties; import java.util.Vector; public class MailSenderInfo { // 发送邮件的服务器的IP和端口 private String mailServerHost; private String mailServerPort = "25"; // 邮件发送者的地址 priva

GET和POST提交乱码解决方案

写在开头: 一般说来在每个页面的开始处,都会加入: <%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%> contentType="text/html;charset=UTF-8"的作用是指定对服务器响应进行重新编码的编码, 当我们提交表单时浏览器会根据contentType对表单的内容进行

Android上发送带附件的邮件

准备工作-下载最新版本的JMail https://java.net/projects/javamail/pages/Home#Download_JavaMail_1.5.2_Release http://www.oracle.com/technetwork/java/javase/downloads/index-135046.html 在android上发送邮件方式: 第一种:借助GMail APP客户端,缺点是必须使用GMail帐号,有点是比较方便 不需要写很多代码,但是不是很灵活. 第二种

使用Spring发送带附件的电子邮件(站内和站外传送)

JavaMail的介绍 JavaMail,顾名思义,提供给开发者处理电子邮件相关的编程接口.它是Sun发布的用来处理email的API.它可以方便地执行一些常用的邮件传输.   虽然JavaMail是Sun的API之一,但它目前还没有被加在标准的java开发工具包中(Java Development Kit),这就意味着你在使用前必须另外下载JavaMail文件.除此以外,你还需要有Sun的JavaBeans Activation Framework (JAF).JavaBeans Activa