If you want to write PHP scripts that handle email, there are a few things you need to understand first. This article, the first of two parts, introduces you to these concepts. It is excerpted from chapter 8 of the Zend PHP Certification Study Guide, written by Zend Technologies (Sams; ISBN: 0672327090).
If you are going to be writing and deploying PHP scripts that generate and send email messages, you need to know something about how email gets delivered around the Internet. This will help you better understand and support your customers when problems arise. Figure 8.1 shows the main components of the email architecture.
Figure 8.1 How email is delivered.
Here are the standard terms that you will come across at some point or another.
MTA—Mail Transport Agent
When email is sent from organization to organization, it is sent from email server to email server. The software that runs on your email server and handles sending and receiving email from around the Internet is called the Mail Transport Agent (MTA for short). Examples of Mail Transport Agents are
sendmail
postfix
qmail
Microsoft Exchange
Lotus Notes
Mail transport agents talk to each other using the SMTP network protocol.
SMTP—Simple Mail Transport Protocol
The Simple Mail Transport Protocol (SMTP) is the standard network-layer protocol for transmitting an email message across the Internet.
Servers normally listen for incoming SMTP connections on port 25.