我有字符串“ test = EC = B9 = E8 = F8 = BE = FD = E1 = ED = E9 test”,它是使用imap_fetchbody()检索的电子邮件正文.我想将其转换为正确的UTF-8字符串“ testěščřžýáítest”.

我尝试过函数imap_utf7_decode,imap_8bit,base64_decode,quoted_printable_decode没有成功.您能告诉我一个将提到的字符串转换为UTF-8的函数吗?

我正在使用iconv_mime_decode($str,0,“ UTF-8”);用于邮件标题,但不适用于邮件正文.

谢谢

答案在接受答案的注释中!

解决方法:

您的输入字符串似乎是ISO-8859-2,因此您可以使用我根据PHP documentation中的注释改编的此功能.

function decode_qprint($str) {

$str = preg_replace("/\=([A-F][A-F0-9])/", "%$1", $str);

$str = urldecode($str);

$str = iconv("ISO-8859-2", "UTF-8", $str);

return $str;

}

编辑:根据评论更新功能:

function decode_qprint($str) {

$str = quoted_printable_decode($str);

$str = iconv('ISO-8859-2', 'UTF-8', $str);

return $str;

}

标签:encoding,email,php

来源: https://codeday.me/bug/20191201/2082651.html

php将文件转换为utf-8,PHP-将邮件正文转换为UTF-8相关推荐

  1. CAD(dxf、dwg格式)文件的读取和显示,真正实现通过代码预览CAD文件,包含解析dwg、dxf文件,可以提取标注信息,可以转换为pdf、png、tiff、gif等6种格式的文件,可以永久免费实用

    真正实现通过代码预览CAD文件,包含解析dwg.dxf文件,可以提取标注信息,可以转换为pdf.png.tiff.gif等6种格式的文件,可以永久免费实用. 网上看了很多资料,不是缺这个就是少那个,反 ...

  2. 将PPT文件内容转换为图片放在Email邮件正文中发送

    通过Email推送统计报告.一般除了要求将PPT报告文件作为附件发给用户,同时希望将报告内容在邮件中直观展示. 一份统计报告中经常包含柱状图.饼图.好看的图表,这些信息要直接在Email中展示比较复杂 ...

  3. 在Java中将字符串转换为char数组,将char数组转换为String

    Today we will learn how to convert String to a char array and then char array to String in Java. 今天, ...

  4. bat脚本执行exe文件_将批处理(BAT)脚本转换为可执行(EXE)文件

    bat脚本执行exe文件 When you get down to it, batch files and executable files work pretty much the same way ...

  5. html页面显示dcm文件,dcm格式的影像 怎么把avi转换为dcm格式?

    医学影像文件dcm格式用什么软件打开? 在哪里可以下正在实习中,想有空用电脑边看边学,在网上查的CT MRI都是用的dcm格式,可我也是找了好久才找到的....网页链接 NBIA国际生物图像数据库. ...

  6. php文件怎么改为mp3,mgg格式怎么转换为mp3

    转换方法:1.打开QQ音乐,依次点击"主菜单"-"音频转码":2.打开音频转换界面,点击"添加歌曲",选择导入mgg格式文件:3.在音频转换 ...

  7. java printwriter 文件_关于java:如何将PrintWriter转换为String或写入文件?

    我正在使用JSP生成动态页面,我想将此动态生成的完整页面保存为文件存档. 在JSP中,所有内容都写入PrintWriter out = response.getWriter(); 在页面的末尾,在向客 ...

  8. 和dump文件_SRA数据库及下载二代测序原始数据转换为fastq文件

    一.SRA数据库: NCBI网站储存二代测序原始数据的数据库. (一)SRA数据类型: 1.Studies:研究课题 2.Experiments:实验设计 3.Samples:样品信息 4.Runs: ...

  9. c 遍历文件 递归遍历_将递归文件系统遍历转换为流

    c 遍历文件 递归遍历 在学习编程的时候,回溯到Turbo Pascal的时代,我设法使用FindFirst , FindNext和FindClose函数在目录中列出文件. 首先,我想出了一个打印给定 ...

最新文章

  1. vue key重复_得心应用的Vue高级技巧
  2. tomcat怎么平滑更新项目_SpringBoot内置tomcat启动原理
  3. C++基础知识(二)--左值右值--逻辑表达式求值优化--逗号运算符与表示式--输入输出格式控制...
  4. LeetCode Contains Duplicate
  5. Dev的关于XtraGrid的使用2
  6. TEE_ObjectHandle在Crypto中的使用
  7. [JOI2012春季合宿]Rotate (链表)
  8. Shell else if mysql_Shell if else语句(详解版)
  9. C语言单链表实现FCFS算法,数据结构与算法复习题(含答案).doc
  10. 快速幂(二进制理解)
  11. 『线性同余方程和中国剩余定理』
  12. Hadoop学习曲线图
  13. HTML 5 新标签
  14. hdu5800_dp
  15. iphone 控制 android手机,Apple iPhone使用Teamviewer远程控制Android手机以实现各种操作,例如远程计时....
  16. 测试报告应该包括哪些内容?
  17. python帮拿王者荣耀金币
  18. 健康饮食(地中海式饮食+DASH饮食)
  19. Google Payments?
  20. 松江辟出长三角G60科创走廊供给侧结构性改革新路

热门文章

  1. 如何在复杂的分布式系统中做测试
  2. 为什么range不是迭代器?range到底是什么类型?
  3. windows server 2008 DC 活动目录备份还原
  4. 运维人员的解放----Docker快速部署
  5. bzoj2038[2009国家集训队]小Z的袜子(hose)
  6. 提高网站打开速度的7大秘籍
  7. 服务器上出现应用程序错误。此应用程序的当前自定义错误设置禁止
  8. uva 674 Coin Change 换钱币【完全背包】
  9. maven常见问题归纳
  10. XE Styles不见了