Emad Saif نشر 14 أغسطس 2022 أرسل تقرير نشر 14 أغسطس 2022 أحاول أن أرسل رسائل إلكترونية من خلال الكود التالي: Mail::to($userEmail)->send($welcomeMessage); كيف يمكنني التحقق من أن رسالة البريد الإلكتروني تم إرسالها بنجاح ولم يحدث مشكلة؟ أستعمل لارافيل الإصدار 8 2 اقتباس
1 Wael Aljamal نشر 14 أغسطس 2022 أرسل تقرير نشر 14 أغسطس 2022 التابع send نفسه نختبر قيمته if (Mail::send(...)) {... أو بعد إرسال البريد، يمكن التحقق من وجود أخطاء، من خلال الدالة failures التي تعيد مصفوفة بالأخطاء التي حصلت مع إرسال البريد // check for failed ones if (Mail::failures()) { // return failed mails return new Error(Mail::failures()); } أو التحقق من عددهم if(count(Mail::failures()) > 0){ $errors = 'Failed to send password reset email, please try again.'; } كما يمكن عملها ب try catch سيتم رمي استثناء في حال حدوث خطأ try { Mail::to($userEmail)->send($welcomeMailable); } catch (Exception $e) { //Email sent failed. } أو بالطريقة: اختبار نمط المتغير إن كان من الصنف SentMessage فالرسالة تم إرسالها $welcomeEmailSent = Mail::to($userEmail)->send($welcomeMailable); if($welcomeEmailSent instanceof \Illuminate\Mail\SentMessage){ //email sent success }else{ //email sent failed } 1 اقتباس
1 Adnane Kadri نشر 15 أغسطس 2022 أرسل تقرير نشر 15 أغسطس 2022 بجانب المشار اليه من قبل المدرب وائل يمكنك التحقق من انه تم ارسال رسالة بريد الكتروني في بيئة اختبارية عن طريق التوكيد assertSent use Illuminate\Support\Facades\Mail; .. /** @test*/ public function a_mail_is_sent() { Mail::fake(); $this->post('/path/to/target' ,$someData); Mail::assertSent(YourMailable::class); } او عددا معينا من المرات: Mail::assertSent(YourMailable::class, 2); او تفاصيل الرسالة: Mail::assertSent(YourMailable::class, function ($mail) use ($user) { return $mail->hasTo($user->email) && // مرسل الى $mail->hasFrom('...') && // مرسل من طرف $mail->hasSubject('...'); // موضوع المراسلة }); اقتباس
السؤال
Emad Saif
أحاول أن أرسل رسائل إلكترونية من خلال الكود التالي:
كيف يمكنني التحقق من أن رسالة البريد الإلكتروني تم إرسالها بنجاح ولم يحدث مشكلة؟
أستعمل لارافيل الإصدار 8
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.