0

我遇到了这个非常奇怪的问题,我似乎无法弄清楚。

我有一个脚本可以读取电子邮件并从电子邮件中获取用户名和链接(或多个链接)并将其放入数组中。由于某种原因,链接不断被切断,因为“=”由于某种原因不断被添加。当我在电子邮件上进行字符串替换时,在我执行正则表达式之前,它不会替换“=”。知道这个问题可能是什么吗?

这是示例电子邮件:

 @bill
 http://techcrunch.com/2012/07/20/kickstarter-flashr-wants-to-make-the-iphones-bezel-a-massive-notification-light/?grcc=88888Z0ZwdgtZ0Z0Z0Z0Z0&grcc2=835637c33f965e6cdd34c87219233711~1342828462249~fca4fa8af1286d8a77f26033fdeed202~510f37324b14c50a5e9121f955fac3fa~1342747216490~0~0~0~0~0~0~0~0~7~3~

当我回显消息的正文时,我得到:

 --00248c6a671acfdb9c04c558d753 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable @bill http://techcrunch.com/2012/07/20/kickstarter-flashr-wants-to-make-the-iphon= es-bezel-a-massive-notification-light/?grcc=3D88888Z0ZwdgtZ0Z0Z0Z0Z0&grcc2= =3D835637c33f965e6cdd34c87219233711~1342828462249~fca4fa8af1286d8a77f26033f= deed202~510f37324b14c50a5e9121f955fac3fa~1342747216490~0~0~0~0~0~0~0~0~7~3~ --00248c6a671acfdb9c04c558d753 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable @bill

注意断开链接的“=”。我的正则表达式产生:

 Array ( [0] => http://techcrunch.com/2012/07/20/kickstarter-flashr-wants-to-make-the-iphon= [1] => http://techcrunch.com/2012/07/2= [2] => http://techcrunch.com/2012= ) 

当我复制并粘贴字符串并通过字符串替换运行它时,它会替换“=”

知道发生了什么吗?

谢谢

4

1 回答 1

2

文本采用称为“Quoted Printable”的编码。首先将其解码为普通文本:

http://php.net/manual/en/function.quoted-printable-decode.php

于 2012-07-21T16:29:24.743 回答