Skip to main content

Command Palette

Search for a command to run...

Email Sending mail() Function and PHPMailer

Published
3 min readView as Markdown
Email Sending mail() Function and PHPMailer

ওয়েব অ্যাপ্লিকেশন ডেভেলপমেন্টে ইমেইল পাঠানোর দরকার পড়ে প্রায় সবসময়। যেমন –

  • রেজিস্ট্রেশনের পর কনফার্মেশন মেইল

  • পাসওয়ার্ড রিসেট লিঙ্ক

  • নিউজলেটার বা নোটিফিকেশন

PHP-তে ইমেইল পাঠানোর জন্য সাধারণত দুইটি জনপ্রিয় উপায় আছে:

  1. PHP mail() ফাংশন ব্যবহার করা

  2. PHPMailer লাইব্রেরি ব্যবহার করা

আজ আমরা দুইটি নিয়েই বিস্তারিত আলোচনা করবো।


১️. PHP mail() Function দিয়ে ইমেইল পাঠানো

PHP-তে ইমেইল পাঠানোর জন্য সবচেয়ে সহজ ফাংশন হলো mail()। এর বেসিক সিনট্যাক্স হলো:

mail(to, subject, message, headers, parameters);
  • to → যাকে মেইল পাঠানো হবে (Receiver Email Address)

  • subject → ইমেইলের বিষয়

  • message → ইমেইলের মূল কনটেন্ট

  • headers → অতিরিক্ত ইনফো যেমন From, Reply-To, CC, BCC ইত্যাদি

  • parameters → (Optional) সার্ভারের জন্য অতিরিক্ত প্যারামিটার

উদাহরণ:

<?php
    $to = "example@gmail.com";
    $subject = "টেস্ট ইমেইল PHP থেকে";
    $message = "হ্যালো! এটি একটি টেস্ট ইমেইল যা PHP mail() ফাংশন দিয়ে পাঠানো হয়েছে।";
    $headers = "From: admin@yourdomain.com";

    if(mail($to, $subject, $message, $headers)) {
        echo "ইমেইল সফলভাবে পাঠানো হয়েছে!";
    } else {
        echo "দুঃখিত, ইমেইল পাঠানো যায়নি!";
    }
?>

mail() ফাংশনের সমস্যা:

  • অনেক সার্ভারে এটি কাজ নাও করতে পারে (যেমন – লোকালহোস্ট বা শেয়ার্ড হোস্টিং)।

  • Gmail, Yahoo এর মত ইমেইল সার্ভিস প্রোভাইডারগুলো অনেক সময় এই ধরনের ইমেইল স্প্যাম ফোল্ডারে পাঠিয়ে দেয়।

  • SMTP অথেনটিকেশন সাপোর্ট করে না।

👉 তাই Professional Application-এ সাধারণত PHPMailer ব্যবহার করা হয়।


২️. PHPMailer ব্যবহার করে ইমেইল পাঠানো

PHPMailer হলো একটি জনপ্রিয় PHP লাইব্রেরি, যা SMTP Authentication সহকারে নিরাপদভাবে ইমেইল পাঠাতে সাহায্য করে। এটি Gmail, Yahoo, Outlook সহ প্রায় সব ইমেইল সার্ভিসের সাথে কাজ করে।

ধাপ-১: PHPMailer ইনস্টল করা

Composer ব্যবহার করে:

composer require phpmailer/phpmailer

অথবা GitHub থেকে ডাউনলোড করা:

PHPMailer GitHub


ধাপ-২: কোড উদাহরণ

<?php
    use PHPMailer\PHPMailer\PHPMailer;
    use PHPMailer\PHPMailer\Exception;

    require 'vendor/autoload.php';

    $mail = new PHPMailer(true);

    try {
        //Server settings
        $mail->isSMTP();
        $mail->Host       = 'smtp.gmail.com'; // Gmail SMTP Server
        $mail->SMTPAuth   = true;
        $mail->Username   = 'your_email@gmail.com'; // আপনার ইমেইল
        $mail->Password   = 'your_app_password';   // Gmail App Password
        $mail->SMTPSecure = 'tls';
        $mail->Port       = 587;

        //Recipients
        $mail->setFrom('your_email@gmail.com', 'Your Name');
        $mail->addAddress('receiver_email@gmail.com', 'Receiver Name');

        //Content
        $mail->isHTML(true);
        $mail->Subject = 'টেস্ট ইমেইল PHPMailer থেকে';
        $mail->Body    = '<h2>হ্যালো!</h2><p>এটি একটি <b>টেস্ট ইমেইল</b> যা <u>PHPMailer</u> ব্যবহার করে পাঠানো হয়েছে।</p>';
        $mail->AltBody = 'এটি একটি টেক্সট ভার্সন।';

        $mail->send();
        echo 'ইমেইল সফলভাবে পাঠানো হয়েছে!';
    } catch (Exception $e) {
        echo "ইমেইল পাঠানো যায়নি। Error: {$mail->ErrorInfo}";
    }
?>

mail() বনাম PHPMailer

বিষয়mail()PHPMailer
সহজতাখুব সহজে ব্যবহার করা যায়একটু সেটআপ প্রয়োজন
সিকিউরিটিকমবেশি (SMTP, SSL/TLS)
স্প্যাম ফোল্ডার সমস্যাঅনেক বেশিতুলনামূলক কম
HTML ইমেইলবেসিক সাপোর্টFull HTML, Attachment, Inline Image ইত্যাদি
প্রফেশনাল অ্যাপ্লিকেশনউপযুক্ত নয়সবচেয়ে বেশি ব্যবহৃত

👉 ছোটখাটো টেস্ট বা ডেমোর জন্য mail() ব্যবহার করা যেতে পারে।
👉 তবে Professional বা Production লেভেল প্রজেক্টে সবসময় PHPMailer ব্যবহার করা উত্তম।

এটি শুধু নিরাপদই নয়, বরং ফিচার-সমৃদ্ধও বটে। তাই আপনার পরবর্তী প্রজেক্টে ইমেইল সিস্টেমের জন্য PHPMailer-ই সেরা সমাধান। 🚀

2 views

More from this blog

HTML-2026

HTML-কে আমরা সাধারণত ওয়েবের সবচেয়ে পুরোনো এবং স্থির প্রযুক্তিগুলোর একটি হিসেবে দেখি। CSS ও JavaScript যেখানে দ্রুত নতুন নতুন feature পাচ্ছে, HTML তুলনামূলকভাবে ধীরে পরিবর্তিত হয়। তবে ধীরে পরিবর্তন হওয়

Sep 3, 202612 min read2
HTML-2026
S

SliceTech

97 posts

Sharing basic web development tutorials.