如何在php中删除gmail附件中的垃圾字符?

如何在php中删除gmail附件中的垃圾字符?,php,gmail-imap,Php,Gmail Imap,我已经在图像中标记了垃圾字符,我希望代码将其删除,然后开始读取数据 看起来难看的文本不是垃圾,而是使*.doc文件成为文档文件的东西(即格式化)。您不能仅仅使用PHP回显该文件 您可以使用一些PHP文档查看器库来显示它,或者您可以在线找到一些API来将文档转换为TXT 您还可以让用户下载它。使用file\u put\u content()将该附件存储到文档文件中,如下所示: if(file_put_content("attachment.doc", $email['attachment'])){

我已经在图像中标记了垃圾字符,我希望代码将其删除,然后开始读取数据


看起来难看的文本不是垃圾,而是使
*.doc
文件成为文档文件的东西(即格式化)。您不能仅仅使用PHP回显该文件

您可以使用一些PHP文档查看器库来显示它,或者您可以在线找到一些API来将文档转换为TXT

您还可以让用户下载它。使用
file\u put\u content()
将该附件存储到文档文件中,如下所示:

if(file_put_content("attachment.doc", $email['attachment'])){
    header("Location: attachment.doc");
}

二进制数据表示一个*.doc文件。如果您真的想从中提取纯文本,可以执行一些模糊逻辑,并提取不包含任何低ASCII码字符的行(CR和LF除外)

假设您的数据结构为$data,则可以执行以下操作:

foreach($data as $element) {
    $element["attachment"] = preg_replace(
        "/^.*?[\x01-\x09,\x0B,\x0C,\x0E-\x1F].*?$\R?/m",
        "", $element["attachment"]);
}

同样,这只是一种“模糊”逻辑,因此您可能仍然会得到一些没有删除的无意义文本。

数据的格式是什么?附加的文件是什么?@NijrajGelani OP想要读取php中的文档文件并删除垃圾代码。为什么要删除它?你不在乎附件吗?我们正在阅读gmail附件中的*.doc文件,这次我们得到了这个垃圾字符感谢你的支持support@swap您正在使用哪个操作系统?我们正在使用Windows。