我正在使用Zend_Mail_Message類來顯示我的PHP應用程序內的電子郵件,並且能夠輸出發件人的主題,內容,日期甚至名稱(使用$ message-> from),但我無法確定瞭解如何獲取發送消息的人的電子郵件地址。這些文檔沒有任何幫助,谷歌搜索發現了100萬條關於如何使用Zend發送消息的結果,但沒有獲得發送消息的地址。如何從Zend_Mail_Message獲取發件人的電子郵件地址?
回答
編輯:
使用返回路徑導致的一些問題,一些郵件,從沒有回覆賬戶([email protected],[email protected]等)具體信息。這些地址最終會看起來像這樣:
[email protected]e.linkedin.com
...這顯然不顯示工作「從」字段的前端。像Apple Mail和Gmail這樣的電子郵件客戶端顯示[email protected]或[email protected],所以這也是我的目標。
不管怎麼說,經過一些調查研究,我發現,「從」在一個Zend郵件對象場總是看起來是這樣的:
"user account name" <[email protected]>
在<的部分>是什麼我是後,但只是做$ from = $ zend_message->只給了我用戶的帳戶名(因此我的原始問題)。經過一番更多的玩耍,這是我終於得到它的工作方式:
$from = $zendMessage->from;
$start = strpos($from, '<');
$email = substr($from, $start, -1);
$result = str_replace('<', '', $email);
希望這可以節省一些人一些挫折。如果有人知道更簡單的方法,請告訴我。
這裏的主要問題是,很多電子郵件程序,中繼代理和病毒掃描沿途做有趣的東西,以實際簡單和明確的電子郵件標準。
Zend_Mail_Message延伸到Zend_Mail_Part具有稱爲getHeaders()
方法。這將從電子郵件中存儲的所有數據與使用getContent()
和實際電子郵件訪問的正文進行訪問。
使用這種方法,你會得到在頭的所有鍵/值對的數組,並同時開發,你應該能夠確定哪頭字段,你會真正想要的。一旦你知道你可以用getHeader('field_name')
或直接得到實際名稱來獲得實際字段。
但是,如果你有許多不同的電子郵件發件人你可能想,雖然與完整的頭陣堅持和評估多個領域的最好的結果一樣,如果有一個「回覆」地址。再次,有很多不確定因素,因爲標準並不總是被遵守。
This works well .. ..
$senderMailAddress = null;
foreach ($message->getHeader('from')->getAddressList() as $address) {
if ($senderMailAddress === null) {
$senderMailAddress = $address->getEmail();
}
}
- 1. 如何從Outlook獲取發件人的電子郵件地址?
- 2. 如何獲取發件人的電子郵件地址
- 3. 如何獲取電子郵件發件人地址
- 4. 從發件人帳戶獲取電子郵件地址
- 5. 如何從MFMailComposer的收件人地址獲取電子郵件地址
- 6. Xcode從地址簿獲取聯繫人電子郵件地址
- 7. 如何從電子郵件地址獲取電子郵件服務的網址
- 8. 用Excel VBA獲取發件人的電子郵件地址
- 9. 使用Python獲取發件人的電子郵件地址IMAP
- 10. 在Infopath中獲取發件人電子郵件地址
- 11. 從給定的電子郵件地址獲取電子郵件地址DirectoryEntry
- 12. 如何從郵件編輯器獲取電子郵件地址
- 13. 從Samaccountname獲取電子郵件地址
- 14. 從facebook獲取電子郵件地址
- 15. 如何從Outlook 2007中獲取發送電子郵件地址
- 16. 獲得來自附件發件人的電子郵件地址
- 17. 如何獲取Hotmail聯繫人的電子郵件地址?
- 18. 如何獲取聯繫人的電子郵件地址?
- 19. 如何使用Gmail Python API獲取電子郵件發件人的電子郵件地址
- 20. 如何在Rails電子郵件模板中獲取發件人的電子郵件地址
- 21. 更改「發件人」地址的php電子郵件地址
- 22. 如何從PayPal IPN獲取多個收件人的電子郵件地址?
- 23. 如何檢索發件人的電子郵件地址
- 24. 如何更改Django電子郵件中的發件人地址?
- 25. Outlook日曆互操作 - 如何獲取發件人電子郵件地址?
- 26. 如何在使用zend imap時獲取發件人電子郵件地址
- 27. 提取/分配錯誤的發件人電子郵件地址
- 28. 如何從聯繫人獲得電子郵件ID和地址
- 29. 如何通過電子郵件發送電子郵件地址
- 30. 從電子郵件地址獲取facebook個人資料圖片
我沒有使用組件,但看看代碼'$ message-> from'返回'From'標題,我希望包含發件人地址以及名稱? – 2012-08-03 17:15:42
var_dump該對象並查找它,然後找出如何訪問它。 – 2012-08-03 17:16:24
就像我說的,$ message-> from只返回發件人的名字...我正在尋找他們的電子郵件地址... – 2012-08-03 17:19:21