メールを送信
/*
再印刷する場合は、ソースを示してください。必要な目的を達成するために、このコードに特定の変更と最適化を加えることができます
* 名前: ソケットを使用して電子メールを送信します
* 説明: このクラスは直接実装しますメールを直接送信するには、認証が必要な SMTP サーバーを使用してください。 limodou の記事「Socket を使用してメールを送信する」を参照してください
* したがって、この記事のカテゴリ
にはあまり意味がありません。 [RFC 1869] と PHP マニュアルも参照してください。 !上記の違いは、私が使用しているのが fsockopen() 関数ではないことです
具体的には、自分で確認できます。 !テストに合格したところです、とても素晴らしいです! !実際、このクラスは、添付ファイルの電子メールを直接送信するように書き換えることができます。 。 。数日以内に書きますね! , 私はデバッグしてパスしました。このプログラムをからかうような悪意がなければ、彼はまだ非常に従順です。数日以内に添付ファイルを送信する機能を完了します。 !
仮想ホストが MAIL 機能をサポートしていなくても、もう心配する必要はありません。早速試してみてください!
* 作者: Xiaoluzhu 3.3 QQ: 6550382
* 日付: 2003-09-18
他の人の作品の成功を尊重してください、この著作権情報を保持してください、ありがとう!
作者: Xiaoluzhu 3.3 、PHP QQ6550382 を交換するために私に連絡することを歓迎します
MAIL:liverzhang@tom.com
*/
set_time_limit(120);
class smtp_mail
{
var $host ; /Port は通常 25 です
var $user ; //SMTP 認証アカウント
var $pass;
var $conn;
var $result_str; // 結果
var $to;
var $body; = Base64_encode($user);
$this->パス = Base64_encode($pass);
$this->debug = $debug;$this->socket =ソケット_create (AF_INET, SOCK_STREAM, SOL_TCP); //具体的な使用方法についてはマニュアルを参照してください
if($this->socket)
{
$this->result_str = "ソケットの作成: ".socket_strerror (socket_last_error());
$this->debug_show($this->result_str);
}
else
{
exit("初期化に失敗しました。ネットワーク接続とパラメータを確認してください");
}
$ this->conn =ソケット_connect($this->ソケット,$this->ホスト,$this->ポート);
if($this->conn)
{
$this-> result_str = "SOCKET 接続の作成:".socket_strerror(socket_last_error());
$this->debug_show($this->result_str);
}
else
{
exit("初期化に失敗しました。ネットワーク接続を確認してくださいおよびパラメータ");
}
$this->result_str = "サーバー応答: ".socket_read ($this->socket, 1024)."";
$ this->debug_show($this->result_str);
}
function debug_show($str)
{
if($this->debug)
{
echo $str."