[Php 4, Php 5, Php 7, Php 8]
Thư - Gửi thư — Send mail
Sự mô tả
mail [& nbsp; & nbsp; & nbsp; & nbsp; chuỗi ________ 0, & nbsp; & nbsp; & nbsp; & nbsp; chuỗi ________ 1, & nbsp; & nbsp; & nbsp; & nbsp; , & nbsp; & nbsp; & nbsp; & nbsp; chuỗi $additional_params
= ""]: bool[
string $to
,
string $subject
,
string $message
,
array|string
$additional_headers
= [],
string $additional_params
= ""
]: bool
Thông số
to
Người nhận, hoặc người nhận thư.
Định dạng của chuỗi này phải tuân thủ »& NBSP; RFC 2822. Một số ví dụ là:
- , nữa
- Người sử dụng
- Người dùng, người dùng khác
subject
Chủ đề của email sẽ được gửi.
message
Tin nhắn sẽ được gửi.
Mỗi dòng phải được phân tách bằng CRLF [\ r \ n]. Các dòng không nên lớn hơn 70 ký tự.
Thận trọng
. Để chống lại điều này, thay thế những lần xuất hiện này bằng một dấu chấm kép.
additional_headers
[tùy chọn]Chuỗi hoặc mảng sẽ được chèn vào cuối tiêu đề email. or array to be inserted at the end of the email header.
Điều này thường được sử dụng để thêm các tiêu đề bổ sung [từ, CC và BCC]. Nhiều tiêu đề bổ sung nên được phân tách bằng CRLF [\ r \ n]. Nếu dữ liệu bên ngoài được sử dụng để soạn thảo tiêu đề này, dữ liệu nên được vệ sinh để không có tiêu đề không mong muốn nào được tiêm.
Nếu một mảng được truyền, các khóa của nó là tên tiêu đề và giá trị của nó là các giá trị tiêu đề tương ứng.array is passed, its keys are the header names and its values are the respective header values.
Ghi chú::
Trước Php 5.4.42 và 5.5.27, một cách lặp lại,
additional_headers
không có bảo vệ tiêm tiêu đề thư. Do đó, người dùng phải đảm bảo các tiêu đề được chỉ định là an toàn và chỉ chứa các tiêu đề. tức là không bao giờ bắt đầu cơ thể thư bằng cách đặt nhiều dòng mới.
Ghi chú::
Trước Php 5.4.42 và 5.5.27, một cách lặp lại,
additional_headers
không có bảo vệ tiêm tiêu đề thư. Do đó, người dùng phải đảm bảo các tiêu đề được chỉ định là an toàn và chỉ chứa các tiêu đề. tức là không bao giờ bắt đầu cơ thể thư bằng cách đặt nhiều dòng mới.Khi gửi thư, thư phải chứa tiêu đề
$subject
1. Điều này có thể được đặt với tham sốadditional_headers
hoặc mặc định có thể được đặt trong php.ini.
Khi gửi thư, thư phải chứa tiêu đềGhi chú::
Trước Php 5.4.42 và 5.5.27, một cách lặp lại,
additional_headers
không có bảo vệ tiêm tiêu đề thư. Do đó, người dùng phải đảm bảo các tiêu đề được chỉ định là an toàn và chỉ chứa các tiêu đề. tức là không bao giờ bắt đầu cơ thể thư bằng cách đặt nhiều dòng mới.
$subject
1. Điều này có thể được đặt với tham số additional_headers
hoặc mặc định có thể được đặt trong php.ini. Không làm điều này sẽ dẫn đến một thông báo lỗi tương tự như $subject
3. Các bộ tiêu đề $subject
1 cũng $subject
5 khi gửi trực tiếp qua SMTP [chỉ Windows].
Nếu không nhận được tin nhắn, chỉ thử sử dụng LF [\ n]. Một số đại lý chuyển thư Unix [đáng chú ý nhất là »& nbsp; qmail] thay thế LF bằng CRLF tự động [dẫn đến tăng gấp đôi CR nếu sử dụng CRLF]. Đây phải là phương sách cuối cùng, vì nó không tuân thủ »& nbsp; rfc 2822.escapeshellcmd[] internally to prevent command execution. escapeshellcmd[] prevents command execution, but allows to add additional parameters. For security reasons, it is recommended for the user to sanitize this parameter to avoid adding unwanted parameters to the shell command.
$subject
6 [tùy chọn]escapeshellcmd[] is applied automatically, some characters that are allowed as email addresses by internet RFCs cannot be used. mail[] can not allow such characters, so in
programs where the use of such characters is required, alternative means of sending emails [such as using a framework or a library] is recommended.
Tham số $subject
6 có thể được sử dụng để chuyển các cờ bổ sung làm tùy chọn dòng lệnh cho chương trình được cấu hình để sử dụng khi gửi thư, như được định nghĩa bởi cài đặt cấu hình $subject
8. Ví dụ: điều này có thể được sử dụng để đặt địa chỉ người gửi phong bì khi sử dụng SendMail với tùy chọn SendMail $subject
9.
Tham số này được EscapeshellCMD [] thoát ra ngoài để ngăn chặn thực thi lệnh. EscapeshellCmd [] ngăn chặn thực thi lệnh, nhưng cho phép thêm các tham số bổ sung. Vì lý do bảo mật, người dùng nên vệ sinh tham số này để tránh thêm các tham số không mong muốn vào lệnh shell.
Vì escapeshellcmd [] được áp dụng tự động, một số ký tự được phép làm địa chỉ email của các RFC Internet không thể được sử dụng. mail [] không thể cho phép các ký tự như vậy, vì vậy trong các chương trình sử dụng các ký tự như vậy, các phương tiện thay thế để gửi email [như sử dụng khung hoặc thư viện] được khuyến nghị.$message
0 if the mail was successfully accepted for delivery, $message
1 otherwise.
Người dùng mà máy chủ web chạy như nên được thêm vào với tư cách là người dùng đáng tin cậy vào cấu hình SendMail để ngăn tiêu đề 'X-Warning' được thêm vào thông báo khi người gửi phong bì [-F] được đặt bằng phương pháp này. Đối với người dùng SendMail, tệp này là/etc/mail/người dùng đáng tin cậy.
Trả về giá trị
7.2.0 | Điều quan trọng cần lưu ý là chỉ vì thư được chấp nhận để giao hàng, điều đó không có nghĩa là thư sẽ thực sự đến đích dự định.array. |
Thay đổi
Phiên bản
Tham số additional_headers
bây giờ cũng chấp nhận một mảng.mail[] to send a simple email:
$message
3
Ví dụ
Ví dụ #1 gửi thư.
$message
4
Sử dụng Mail [] để gửi một email đơn giản:array
Ví dụ #2 Gửi thư với các tiêu đề bổ sung.
$message
5
Việc bổ sung các tiêu đề cơ bản, nói với các địa chỉ từ và trả lời:
Ví dụ #3 Gửi thư với các tiêu đề bổ sung dưới dạng mảng
$message
8
Ví dụ này gửi cùng một thư với ví dụ ngay lập tức ở trên, nhưng chuyển các tiêu đề bổ sung dưới dạng mảng [có sẵn kể từ Php 7.2.0].
Ví dụ #4 Gửi thư với tham số dòng lệnh bổ sung.mail[].
$message
9
$additional_headers
0
$additional_headers
1Ghi chú::
Trước Php 5.4.42 và 5.5.27, một cách lặp lại,
additional_headers
không có bảo vệ tiêm tiêu đề thư. Do đó, người dùng phải đảm bảo các tiêu đề được chỉ định là an toàn và chỉ chứa các tiêu đề. tức là không bao giờ bắt đầu cơ thể thư bằng cách đặt nhiều dòng mới.
Ghi chú
Ghi chú::
Việc triển khai SMTP [chỉ Windows] của Mail [] khác nhau theo nhiều cách so với triển khai SendMail. Đầu tiên, nó không sử dụng nhị phân cục bộ để soạn tin nhắn mà chỉ hoạt động trên ổ cắm trực tiếp, điều đó có nghĩa là cần phải nghe trên ổ cắm mạng [có thể trên localhost hoặc máy từ xa].mail[] differs in many ways from the sendmail implementation. First, it doesn't use a local binary for composing messages but only operates on direct sockets which means a
$additional_headers
2 is needed listening on a network socket [which can either on the localhost or a remote machine].Thứ hai, các tiêu đề tùy chỉnh như
$additional_headers
3,$additional_headers
4,$additional_headers
5 và$additional_headers
6 không được giải thích bởi$additional_headers
2 ở nơi đầu tiên, nhưng được phân tích bởi PHP.Như vậy, tham số
to
không nên là một địa chỉ dưới dạng "một cái gì đó". Lệnh thư có thể không phân tích đúng điều này trong khi nói chuyện với MTA.
Ghi chú::
Việc triển khai SMTP [chỉ Windows] của Mail [] khác nhau theo nhiều cách so với triển khai SendMail. Đầu tiên, nó không sử dụng nhị phân cục bộ để soạn tin nhắn mà chỉ hoạt động trên ổ cắm trực tiếp, điều đó có nghĩa là cần phải nghe trên ổ cắm mạng [có thể trên localhost hoặc máy từ xa].mail[] function is not suitable for larger volumes of email in a loop. This function opens and closes an SMTP socket for each email, which is not very efficient.
Thứ hai, các tiêu đề tùy chỉnh như
$additional_headers
3,$additional_headers
4,$additional_headers
5 và$additional_headers
6 không được giải thích bởi$additional_headers
2 ở nơi đầu tiên, nhưng được phân tích bởi PHP.
Ghi chú::
Việc triển khai SMTP [chỉ Windows] của Mail [] khác nhau theo nhiều cách so với triển khai SendMail. Đầu tiên, nó không sử dụng nhị phân cục bộ để soạn tin nhắn mà chỉ hoạt động trên ổ cắm trực tiếp, điều đó có nghĩa là cần phải nghe trên ổ cắm mạng [có thể trên localhost hoặc máy từ xa].
Thứ hai, các tiêu đề tùy chỉnh như $additional_headers
3, $additional_headers
4, $additional_headers
5 và $additional_headers
6 không được giải thích bởi $additional_headers
2 ở nơi đầu tiên, nhưng được phân tích bởi PHP.
- Như vậy, tham số
to
không nên là một địa chỉ dưới dạng "một cái gì đó". Lệnh thư có thể không phân tích đúng điều này trong khi nói chuyện với MTA. - Điều đáng chú ý là hàm mail [] không phù hợp với khối lượng email lớn hơn trong một vòng lặp. Chức năng này mở và đóng một ổ cắm SMTP cho mỗi email, không hiệu quả lắm.
- Để gửi số lượng lớn email, hãy xem »& nbsp; Pear :: mail và» & nbsp; pear :: mail_queue gói.
- Các RFC sau đây có thể hữu ích: »& nbsp; rfc 1896,» & nbsp; rfc 2045, »& nbsp; rfc 2046,
Xem thêm ¶
mb_send_mail [] - Gửi thư được mã hóa
$additional_headers
9
$additional_params
0
$additional_params
1
$additional_params
2
$additional_params
3
$additional_params
4
$additional_params
5
$additional_params
6Xem thêm ¶
mb_send_mail [] - Gửi thư được mã hóa
$additional_params
7
$additional_params
8
$additional_params
6imap_mail [] - Gửi tin nhắn email ¶
mb_send_mail [] - Gửi thư được mã hóa
to
0
to
1
to
2
$additional_params
6imap_mail [] - Gửi tin nhắn email ¶
»& Nbsp; Pear :: mail
to
4
to
5
to
6
to
7
to
8
to
9
subject
0
subject
1
$additional_params
6»& Nbsp; Pear :: mail_mime ¶
Ẩn danh ¶
subject
3
subject
4
subject
5
subject
6
subject
7
subject
8
subject
9
message
0
message
1
message
2
message
3
message
4
$additional_params
63 năm trước ¶
mb_send_mail [] - Gửi thư được mã hóa
message
6
message
7
message
8
message
9
0
1
$additional_params
6imap_mail [] - Gửi tin nhắn email ¶
»& Nbsp; Pear :: mail
3
4
5
6
7
$additional_params
6»& Nbsp; Pear :: mail_mime ¶
Ẩn danh ¶
9
additional_headers
0
additional_headers
1
$additional_params
63 năm trước ¶
»& Nbsp; Pear :: mail
additional_headers
3
additional_headers
4
additional_headers
5
additional_headers
6»& Nbsp; Pear :: mail_mime ¶
Ẩn danh ¶
additional_headers
7
3 năm trước ¶
mb_send_mail [] - Gửi thư được mã hóa
additional_headers
8
additional_headers
9
$subject
00
$additional_params
6imap_mail [] - Gửi tin nhắn email ¶
»& Nbsp; Pear :: mail
$subject
02
$subject
03
$subject
04
$subject
05
$subject
06
$subject
07
$additional_params
6»& Nbsp; Pear :: mail_mime ¶
mb_send_mail [] - Gửi thư được mã hóa
$subject
09
$subject
10
$additional_params
6
imap_mail [] - Gửi tin nhắn email ¶
»& Nbsp; Pear :: mail
$subject
12
$subject
13
$subject
14
$subject
15
$additional_params
6»& Nbsp; Pear :: mail_mime ¶
Ẩn danh ¶
$subject
17