Làm cách nào để gửi thư từ Laravel?
Một tính năng quan trọng khác của Laravel là cung cấp việc sử dụng API rõ ràng và đơn giản, miễn phí và giàu tính năng thư viện - "SwiftMailer", được sử dụng để gửi email. Với sự trợ giúp của các chức năng thư viện, các nhà phát triển Laravel dễ dàng gửi email mà không gặp bất kỳ trở ngại nào. Các nhà phát triển có thể sử dụng cú pháp phiến để đưa dữ liệu vào một mẫu vì các mẫu email được tải giống như cách xem Show
Cú pháp trông giống như thế này cú pháp
Các phương pháp khác nhau của hệ thống gửi thưĐối số thứ ba trong hàm trên lấy ví dụ là một tin nhắn và một số hàm sau giúp thực hiện tương tác gửi thư tốt hơn. đó là
Các phương pháp thường được sử dụng khác là
Để gửi thư văn bản thuần túy, bạn phải sử dụng cú pháp hiển thị bên dưới
Toàn bộ cú pháp này ở định dạng mảng-khóa-giá trị, trong đó đối số đầu tiên có dạng mảng theo sau là văn bản và tên của chế độ xem dưới dạng cặp khóa-giá trị Các bước để gửi email trong LaravelVì vậy, chủ đề là gửi email qua tài khoản Gmail và cần tệp môi trường Laravel, đó là. env, để định cấu hình với tài khoản Gmail của bạn. Tệp môi trường chứa tập lệnh
Tiếp theo, bạn phải xóa bộ đệm và khởi động lại máy chủ Laravel của mình. Đối với điều đó, bạn phải sử dụng các lệnh sau
Sau đó, để tạo MailController, bạn phải gõ và chạy lệnh dưới đây
Sau đó, bạn phải thiết lập nội dung bên trong của MailController. php và để làm được điều này, bạn phải viết đoạn script được đề cập bên dưới Gửi email là một trong những tính năng phổ biến nhất mà mọi ứng dụng web cung cấp. Một số trang web sử dụng tính năng gửi email của họ để gửi bản tin và một số sử dụng tính năng này để thu thập phản hồi phản hồi Các trang web hỗ trợ PHP sử dụng phương thức Mail() php để gửi email. Tuy nhiên, trong trường hợp này, bảo mật thường bị xâm phạm vì đây không phải là cách an toàn nhất để gửi/nhận email trên trang web Để gửi email trong Laravel, framework cung cấp một số tính năng nâng cao để làm việc với. Nó có các gói khác nhau có sẵn trên thị trường giúp tích hợp chức năng gửi email dễ dàng. Tại sao nên sử dụng Laravel để gửi email?Laravel cung cấp nhiều công cụ khác nhau để định cấu hình email trong trang web. Bạn có thể kiểm tra một số tùy chọn dưới đây.
Phương pháp bản địa hóa để đặt ngôn ngữ mong muốn cho người dùng cụ thể Ngừng lãng phí thời gian trên máy chủCloudways xử lý việc quản lý máy chủ cho bạn để bạn có thể tập trung vào việc tạo các ứng dụng tuyệt vời và giữ cho khách hàng của mình hài lòng Cài đặt LaravelVới mục đích của hướng dẫn này, tôi giả sử rằng bạn đã cài đặt ứng dụng Laravel trên máy chủ web Để đảm bảo rằng tôi không bị phân tâm bởi các vấn đề ở cấp độ máy chủ, tôi đã quyết định cài đặt Laravel cho một máy chủ sử dụng nền tảng được quản lý bởi Cloudways vì nó giải quyết các vấn đề ở cấp độ máy chủ và cung cấp một bộ nhớ cache và công nghệ cơ sở dữ liệu tuyệt vời. Bạn có thể dùng thử Cloudways miễn phí bằng cách đăng ký tài khoản Những điều bạn cần biết về Laravel MailCó rất nhiều hướng dẫn, hướng dẫn có sẵn trực tuyến liên quan đến Laravel Mail. Bạn cũng có thể tìm thấy một số ví dụ chi tiết trên trang web chính thức của Laravel Xây dựng email trong LaravelLaravel cung cấp một API đơn giản cho thư viện SwiftMailer phổ biến với trình điều khiển cho SMTP, Mailgun, Postmark, Amazon SES và sendmail, cho phép bạn gửi email nhanh chóng với cấu trúc tùy chọn Tạo thư có thể gửi thưTrong Laravel, mỗi loại email được gửi bởi ứng dụng của bạn được biểu diễn dưới dạng một lớp “có thể gửi thư”. Trước tiên, bạn cần tạo một lớp có thể gửi thư với bất kỳ tên nào. Hãy dán lệnh sau vào thiết bị đầu cuối SSH của Cloudways ________số 8_______Khi bạn thực hiện lệnh nêu trên, lớp thư của bạn sẽ được tạo với tên CloudHostingProduct. Vì vậy, nó sẽ tạo tệp này bên trong App\Mail\CloudHostingProduct. php Phương pháp từTrong phương thức Form Method, bạn sẽ xác định địa chỉ email mà bạn muốn sử dụng. */ public function build() { return $this->from('[email protected]') ->view('emails.CloudHosting.Product); } Địa chỉ thư toàn cầuNếu thư của bạn giống nhau trên tất cả các ứng dụng web của chúng tôi thì bạn có thể cấu hình trước trong config/mail. php trong Laravel bằng cách sử dụng đoạn mã sau Nếu bạn đang sử dụng cùng một địa chỉ email trên toàn bộ ứng dụng, thì trước tiên bạn phải định cấu hình địa chỉ đó trong tệp config/mail. tập tin php. Chỉ cần sao chép và dán đoạn mã sau 'from' => ['address' => '[email protected]', 'name' => 'App Name'], Cài đặt View cho Laravel MailTrong phương thức xây dựng của lớp có thể gửi thư, bạn có thể sử dụng phương thức xem để chỉ định mẫu nào sẽ được sử dụng để gửi thư khi hiển thị nội dung của email public function build() { return $this->view('emails.CloudHosting.Product); } Xem dữ liệuBạn muốn chuyển một số dữ liệu đến chức năng xem mà bạn có thể sử dụng khi hiển thị HTML của email? . Đầu tiên, bất kỳ thuộc tính công khai nào được xác định trong lớp có thể gửi thư của bạn sẽ tự động có sẵn cho chế độ xem. Ví dụ: bạn có thể truyền dữ liệu vào hàm tạo của lớp có thể gửi thư của mình và đặt dữ liệu đó thành các thuộc tính công khai được xác định trên lớp name = $name; } public function build() { return $this->view('emails.name'); } } Khi dữ liệu đã được đặt thành thuộc tính công khai, nó sẽ tự động có sẵn trong chế độ xem của bạn Tạo mẫu email Laravel
Định cấu hình các tuyến đườngTạo tuyến đường bằng cách dán đoạn mã sau vào web. tập tin php Route::get('/send/email', '[email protected]'); Tập tin điều khiểnBây giờ, hãy tạo một tệp điều khiển với bất kỳ tên ưa thích nào của bạn. Đối với hướng dẫn này, tôi sẽ dán đoạn mã sau vào HomeController public function mail() { $name = 'Cloudways'; Mail::to('[email protected]')->send(new SendMailable($name)); return 'Email sent Successfully'; } Cấu hình cho Laravel Gmail SMTPCài đặt email trong Laravel với Gmail SMTP khá dễ dàng. Trước hết, bạn cần cấu hình các cài đặt cơ bản. Để thực hiện bước này, Dán đoạn mã sau vào. env theo cài đặt của bạn MAIL_DRIVER=smtp MAIL_HOST=smtp.googlemail.com MAIL_PORT=465 MAIL_USERNAME=ENTER_YOUR_EMAIL_ADDRESS(GMAIL) MAIL_PASSWORD=ENTER_YOUR_GMAIL_PASSWORD MAIL_ENCRYPTION=ssl Trong cài đặt nêu trên, bạn có thể định cấu hình MAIL_DRIVER là SMTP, MAIL_HOST cho Gmail là smtp. thư Google. com, MAIL_ PORT cho Gmail là phương thức 465 và MAIL_ENCRYPTION là SSL Vì chúng tôi đang sử dụng Gmail SMTP với Laravel, chúng tôi cần thay đổi một số cài đặt bảo mật trên tài khoản Google của mình để cấp quyền truy cập cho các ứng dụng kém an toàn hơn Cài đặt tài khoản GmailSau khi định cấu hình thành công cài đặt cho ứng dụng Laravel của bạn, hãy truy cập tài khoản Gmail của bạn Khi bạn đã đăng nhập vào tài khoản Gmail của mình, hãy nhấp vào cài đặt tài khoản Google và kiểm tra cài đặt bảo mật của bạn, vì bạn phải sử dụng SMTP Bây giờ, hãy viết đoạn mã sau để gửi email trong Laravel Trong bộ điều khiểnTạo bộ điều khiển với bất kỳ tên nào bạn thích và dán đoạn mã sau vào đó public function mail() { $to_name = ‘RECEIVER_NAME’; $to_email = ‘RECEIVER_EMAIL_ADDRESS’; $data = array(‘name’=>”Cloudways (sender_name)”, “body” => “A test mail”); Mail::send(‘mail’, $data, function($message) use ($to_name, $to_email) { $message->to($to_email, $to_name) ->subject(Laravel Test Mail’); $message->from(‘SENDER_EMAIL_ADDRESS’,’Test Mail’); }); return 'Email sent Successfully'; } Xem tài liệuBây giờ, tạo một tệp Blade với tên mail. lưỡi. php và dán đoạn mã sau */ public function build() { return $this->from('[email protected]') ->view('emails.CloudHosting.Product); }0 6 công cụ gửi email hàng đầu cho LaravelCó nhiều gói email và nguồn có sẵn cho Laravel. Hãy xem một số công cụ được sử dụng phổ biến nhất trong Laravel để gửi email
Tích hợp Mailtrap với LaravelMailtrap có một máy chủ mặc định trong Laravel, vì vậy bạn chỉ cần nhập thông tin đăng nhập của mình vào đó. Chỉ cần cài đặt Laravel bằng cách sử dụng Nền tảng lưu trữ được quản lý trên nền tảng đám mây và dán các cấu hình sau vào. tập tin env */ public function build() { return $this->from('[email protected]') ->view('emails.CloudHosting.Product); }1 Trong hầu hết các trường hợp, các. cấu hình tệp env là đủ. Ngoài ra, bạn có thể đặt cấu hình/mail của mình. php vào nội dung sau (nó cũng có sẵn trong danh sách tích hợp trong Mailtrap) */ public function build() { return $this->from('[email protected]') ->view('emails.CloudHosting.Product); }2 Tạo lớp Mailable cho MailtrapBây giờ, tạo một lớp Mailable bằng cách dán lệnh sau vào SSH Terminal */ public function build() { return $this->from('[email protected]') ->view('emails.CloudHosting.Product); }3 Tiếp theo, bạn phải tìm nó trong thư mục Thư trong ứng dụng/Mail. Bạn có một mẫu chứa các chức năng cơ bản để bạn có thể sửa đổi mẫu đó bằng mã sau */ public function build() { return $this->from('[email protected]') ->view('emails.CloudHosting.Product); }4 Tiếp theo, bạn phải tạo một thông báo cho điều này trong thanh kiếm. tập tin php. Trong ví dụ này, tôi đã chỉ định lớp mailable trong thư. thí dụ. Bây giờ bạn phải tạo thư mục 'mails' với tệp mẫu phiến 'emailexample. lưỡi. php'. tuyến đườngĐể tạo lộ trình cho thư, chỉ cần dán đoạn mã sau */ public function build() { return $this->from('[email protected]') ->view('emails.CloudHosting.Product); }5 Tích hợp SendGrid với LaravelMột công cụ phổ biến khác cho email của Laravel là SendGrid. Cùng tham khảo hướng dẫn gửi email với SendGrid trong Laravel sau đây. Mailable chịu trách nhiệm đối chiếu dữ liệu và chuyển chúng đến 'lượt xem', giống như Mailtrap. Trước tiên, bạn có thể kiểm tra ứng dụng của mình. env để gửi cấu hình email liên quan đến SendGrid */ public function build() { return $this->from('[email protected]') ->view('emails.CloudHosting.Product); }6 Tạo có thể gửi thưGiống như trong Mailtrap, bạn có thể tạo một lớp có thể gửi thư bằng cách dán lệnh sau vào thiết bị đầu cuối SSH */ public function build() { return $this->from('[email protected]') ->view('emails.CloudHosting.Product); }7 Lệnh này sẽ tạo một tệp mới trong ứng dụng/Mail/TestEmail. php và nó sẽ trông như thế này */ public function build() { return $this->from('[email protected]') ->view('emails.CloudHosting.Product); }8 Chế độ xem email của LaravelHãy tạo Laravel View cho Email Templates khi gửi email. Chỉ cần dán đoạn mã sau vào tệp xem của bạn nằm trong lượt xem/email/kiểm tra. lưỡi. php */ public function build() { return $this->from('[email protected]') ->view('emails.CloudHosting.Product); }9 Tích hợp Mailgun trong LaravelTrước hết, bạn phải đăng ký Mailgun và tạo một tài khoản miễn phí. Sau khi tạo tài khoản, bạn có thể thay đổi. cài đặt tệp env chỉ bằng cách thay đổi Trình điều khiển thư thành mailgun Sau khi đăng nhập thành công, bạn sẽ thấy các mã bằng các ngôn ngữ khác nhau. Chọn mã PHP từ đó Tệp cấu hình LaravelThêm cấu hình mailgun vào ứng dụng của bạn bằng cách dán đoạn mã sau vào config/services. php 'from' => ['address' => '[email protected]', 'name' => 'App Name'],0 Định tuyến Mailgun của LaravelHãy tạo các tuyến để kiểm tra email bằng Mailgun. Chỉ cần sao chép mã dưới đây vào web ứng dụng của bạn. tập tin php 'from' => ['address' => '[email protected]', 'name' => 'App Name'],1 Bạn cũng có thể muốn bao gồm một dòng chủ đề và có thể là một email người gửi như vậy 'from' => ['address' => '[email protected]', 'name' => 'App Name'],2 Tích hợp Mandrill trong LaravelTrước hết bạn phải tạo một tài khoản trên Mandrill và sau đó phải cài guzzle cho cái đó. Chỉ cần dán lệnh sau vào ứng dụng của bạn 'from' => ['address' => '[email protected]', 'name' => 'App Name'],3 Sau đó, bạn phải cài đặt trình điều khiển ứng dụng trong thư của mình. tập tin php. Sau đó, bạn phải sao chép khóa API trong config/services. php 'from' => ['address' => '[email protected]', 'name' => 'App Name'],4 Gửi email MandrillSao chép phương thức được đề cập bên dưới để gửi email bằng Mandrill 'from' => ['address' => '[email protected]', 'name' => 'App Name'],5 Tích hợp Mailchimp trong LaravelĐể tích hợp Mailchimp trong Laravel, trước tiên bạn phải tạo một tài khoản miễn phí trên Mailchimp. Sau khi đăng nhập thành công, hãy tạo Danh sách trên menu, sau đó chuyển đến Cài đặt và sao chép ID Danh sách mà bạn sẽ sử dụng trong API. mở của bạn. env và dán khóa API vào đó 'from' => ['address' => '[email protected]', 'name' => 'App Name'],6 Cài đặt gói Laravel MailchimpSau khi cấu hình thành công các cài đặt trong. env, hãy mở thiết bị đầu cuối SSH của bạn và dán lệnh sau 'from' => ['address' => '[email protected]', 'name' => 'App Name'],7 Tệp cấu hình LaravelBây giờ, hãy thiết lập tệp cấu hình của bạn bằng cách dán đoạn mã sau vào tệp cấu hình của bạn. tập tin php 'from' => ['address' => '[email protected]', 'name' => 'App Name'],8 Định tuyến LaravelBây giờ, hãy thiết lập các tuyến ứng dụng web của bạn như hình bên dưới 'from' => ['address' => '[email protected]', 'name' => 'App Name'],9 Bộ điều khiển LaravelBây giờ, hãy tạo một bộ điều khiển có tên là MailchmpController. php public function build() { return $this->view('emails.CloudHosting.Product); }0 Chế độ xem LaravelSau khi tạo Controller, bước tiếp theo là tạo file view blade của bạn trong resource/views/mailchimp. lưỡi. php. Chỉ cần dán đoạn mã sau vào tệp. Bạn cũng có thể xem tích hợp MailChimp php Trên Cloudways, vì đây thực sự là một nền tảng tất cả trong một để tương tác với khán giả của bạn và các bên liên quan khác public function build() { return $this->view('emails.CloudHosting.Product); }1 Q. Nhà cung cấp dịch vụ gửi email bên thứ ba nào được hỗ trợ theo mặc định trong Laravel?A. Sau đây được hỗ trợ theo mặc định trong Laravel
Q. Những lý do phổ biến khiến email không gửi được là gì?A. Lý do tại sao email có thể không được gửi
Q. Làm cách nào để sử dụng thư () trong Laravel?A. Laravel cung cấp API mạnh mẽ và rõ ràng trên thư viện SwiftMailer với trình điều khiển cho Mailgun, SMTP, Amazon SES, SparkPost và gửi email. Với API này, chúng tôi có thể gửi email trên máy chủ cục bộ cũng như máy chủ trực tiếp Thí dụ Q. Làm cách nào để kiểm tra xem email đã được gửi trong Laravel chưa?A. Nói chung, thư. fail() trả về một mảng các địa chỉ email bị lỗi Q. Làm cách nào để tạo mẫu email trong Laravel?A. Tệp mẫu email là tệp phiến mà bạn có thể tùy chỉnh để thêm chi tiết và các phần tùy chỉnh theo thiết kế mẫu email của mình Từ cuối cùngĐiều này đưa chúng ta đến phần cuối của bài viết này, trình bày chi tiết quá trình tích hợp hoàn chỉnh của các công cụ gửi email khác nhau trong Laravel. Sử dụng các công cụ dựng sẵn này, bạn có thể dễ dàng gửi email trong ứng dụng Laravel – trong thời gian nhanh chóng. Hơn nữa, như đã đề cập ở trên, quy trình tích hợp của chúng khá dễ dàng, vì vậy các nhà phát triển có thể nhanh chóng bắt đầu với các công cụ gửi email của Laravel Nếu bạn vẫn có bất kỳ câu hỏi nào liên quan đến bài viết này, vui lòng hỏi họ trong phần bình luận bên dưới Đánh giá của khách hàng tại “Dịch vụ lưu trữ trên nền tảng đám mây có một trong những dịch vụ khách hàng tốt nhất và tốc độ lưu trữ”Sanjit C [Nhà phát triển trang web] Saquib RizwanSaquib là Chuyên gia cộng đồng PHP tại Cloudways - Nền tảng đám mây lưu trữ PHP được quản lý. Anh thông thạo PHP và thường xuyên đóng góp cho các dự án mã nguồn mở. Để giải trí, anh ấy thích chơi game, xem phim và đi chơi với bạn bè. Bạn có thể gửi email cho anh ấy tại [email protected] Làm cách nào để gửi email từ Laravel 8?Gửi email trong Laravel 8 bằng máy chủ SMTP của Gmail . Gửi email đã trở thành một phần thiết yếu của các ứng dụng web hiện đại. . Theo mặc định, dự án được phục vụ trên cổng 8000 trên máy chủ cục bộ. . Định cấu hình cài đặt tài khoản Google. . Thiết lập kết nối cơ sở dữ liệu. . Tạo một Mailable. . Thiết lập bộ điều khiển Làm cách nào để gửi thư SMTP trong Laravel?Làm theo các bước đơn giản dưới đây để gửi email trong Laravel 9 bằng SMTP. . Cài đặt Laravel 9 & Định cấu hình thông tin xác thực SMTP Tạo một lớp thư Tạo bộ điều khiển thư Tạo một thư mục email và chế độ xem phiến Thêm một tuyến đường gửi email Chạy và kiểm tra ứng dụng Làm cách nào để gửi thư trong Laravel API?Làm cách nào để gửi email trong Laravel bằng API email giao dịch? . Tạo một tài khoản Mailtrap và đăng nhập Thêm và xác minh miền của bạn Chuyển đến tab API và SMTP để tìm đoạn mã tích hợp Email API mà bạn cần thêm vào route/web. php và chạy với ứng dụng của bạn Làm cách nào để gửi thư từ Laravel 9?vì vậy hãy xem hướng dẫn từng bước và gửi email đến yêu cầu của bạn. . Bước 1. Cài đặt Laravel 9 Bước 2. Tạo cấu hình Bước 3. Tạo lớp thư Bước 4. Tạo bộ điều khiển Bước 5. Tạo tuyến đường Bước 6. Tạo Chế độ xem Blade Chạy ứng dụng Laravel |