как отправить письма HTML с помощью ГРУШЕВОЙ почты

Мой способ иметь в виду оба ключевых слова, которые они противоположны друг другу.

override: ключевое слово virtual должно быть определено для переопределения метода. Метод, использующий ключевое слово override, независимо от ссылочного типа (ссылка на базовый класс или производный класс), если он создается с базовым классом, выполняется метод базового класса. В противном случае используется метод производного класса.

new: если ключевое слово используется методом, в отличие от ключевого слова override, тип ссылки важен. Если он создается с производным классом, а ссылочный тип - это базовый класс, выполняется метод базового класса. Если он создается с производным классом, а ссылочный тип - это производный класс, выполняется метод производного класса. А именно, это отличие от ключевого слова override. En passant, если вы забыли или опустите, чтобы добавить новое ключевое слово в метод, компилятор ведет себя по умолчанию при использовании ключевого слова new.

class A 
{
    public string Foo() 
    {
        return "A";
    }

    public virtual string Test()
    {
        return "base test";
    }
}

class B: A
{
    public new string Foo() 
    {
        return "B";
    }
}

class C: B 
{
    public string Foo() 
    {
        return "C";
    }

    public override string Test() {
        return "derived test";
    }
}

Вызов в основном:

A AClass = new B();
Console.WriteLine(AClass.Foo());
B BClass = new B();
Console.WriteLine(BClass.Foo());
B BClassWithC = new C();
Console.WriteLine(BClassWithC.Foo());

Console.WriteLine(AClass.Test());
Console.WriteLine(BClassWithC.Test());

Выход:

A
B
B
base test
derived test
23
задан Sakura 1 September 2009 в 10:46
поделиться

2 ответа

Если вы последуете этому примеру, то нет причин, по которым он не должен работать:

<?php
include('Mail.php');
include('Mail/mime.php');

// Constructing the email
$sender = "Leigh <leigh@no_spam.net>";// Your name and email address
$recipient = "Leigh <leigh@no_spam.net>"; // The Recipients name and email address
$subject = "Test Email";// Subject for the email
$text = 'This is a text message.';// Text version of the email
$html = '<html><body><p>HTML message</p></body></html>';// HTML version of the email
$crlf = "\r\n";
$headers = array('From' => $sender, 'Return-Path' => $sender, 'Subject' => $subject);

// Creating the Mime message
$mime = new Mail_mime($crlf);

// Setting the body of the email
$mime->setTXTBody($text);
$mime->setHTMLBody($html);

$body = $mime->get();
$headers = $mime->headers($headers);

// Sending the email
$mail =& Mail::factory('mail');
$mail->send($recipient, $headers, $body);
?>

ПРИМЕЧАНИЕ: для того, чтобы приведенный выше пример работал, нужен пакет Mime Pear Mail в дополнение к Груша Почта одна. Вы можете получить пакет здесь https://pear.php.net/package/Mail_Mime/download .

29
ответ дан 29 November 2019 в 01:41
поделиться

Как выглядят ваши заголовки? Вот мои:

$headers = array(
    'To' => $recipients,
    'From' => $adminEmail,
    'Subject' => $subject,
    'MIME-Version' => 1,
    'Content-type' => 'text/html;charset=iso-8859-1'
);
16
ответ дан story 29 November 2019 в 01:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: