2014-10-20 138 views
1

我正在處理電子郵件解析腳本並存在一些問題。當電子郵件正在被轉發時,它將電子郵件標題插入郵件正文中,例如From,To,Sent,Subject。我試圖剝離它,但它不是剝離。我嘗試了一些方法,但沒有運氣。有什麼建議麼?如何從郵件正文中刪除電子郵件標題

// PHP

$message = str_replace("/^From: (.*)/", "", $message); 
$message = str_replace("/^To: (.*)/", "", $message); 
$message = str_replace("/^Subject: (.*)/", "", $message); 

我也已經嘗試$消息= str_replace函數( 「發件人:$從」, 「」,$消息); //從頭獲取$。

+0

你可以粘貼你正在使用的字符串('$ message')嗎? – Rasclatt 2014-10-20 00:41:26

+0

另外,你可能想要做一個'preg_replace()'而不是你想要做的'str_replace()' – Rasclatt 2014-10-20 00:42:47

回答

1

我不知道你是否仍然有這個問題,但你應該使用preg_replace函數(或preg_replace_all如果你正在嘗試找到多個事件)。您的代碼應該是這樣的:

preg_replace("/^From: (.*)/", "", $message, $from); 
    preg_replace("/^To: (.*)/", "", $message, $to); 
    preg_replace("/^Subject: (.*)/", "", $message, $subject); 

當你試圖輸出變量使用的打印(R)功能:

print_r($from, true); 
    print_r($to, true); 
    print_r($subject, true); 

它可能會出來作爲一個多維數組,你可以回顯數組中的響應。

echo $from[1][0]; // It may be in a different array location.  
    echo $to[1][0]; // It may be in a different array location.  
    echo $subject[1][0]; // It may be in a different array location.  

您可能需要調整陣列位置([1] [0])以輸出正確的數據。希望這可以幫助。

相關問題