ある記事では、phpmailer を使用して PHP にメール送信機能を実装する方法を説明します。
PHP を使用してメール送信機能を実装するにはどうすればよいですか?次の記事では、phpmailer と SMTP サービスを使用して PHP を使用してメールを送信する方法を紹介します。
時々ブログにメッセージやコメントが来るので、時間内に返信しますが、質問があります。返信した後、私にメッセージを残した人がメッセージが再び私のブログに表示されないことを確認してください、彼は知りません、これは非常に不合理です。
他の人のブログをチェックしてください。ほとんどの返信は電子メールで行われます。
これはかなり良いので、購入しましょう。
Baiduでは基本的に2つの方法が紹介されています。
1 つ目は、PHP が qq メールボックスまたは NetEase メールボックスの SMTP サーバーを介した電子メール送信を実装していることです。
2 つ目は、phpmailer を使用して電子メールを送信することです。
2 番目の方法では、電子メールで SMTP サービスを有効にする必要があることに注意してください。
メールボックスの SMTP サービスを開く方法の最終的な効果は次のとおりです。
開くプロセス中に、ページにプロンプトが表示されます。 SMTP 認証パスワードは次の図に示すとおりです。このパスワードは覚えておく必要があります。覚えていない場合は、再度生成できます。上記の 2 つの SMTP サービスを開きました。最終的な認証パスワードが優先されます。
最初の方法を試したところ、次のようなエラーが発生しました:
Trying to smtp.qq.com:587 220 smtp.qq.com Esmtp QQ Mail Server Connected to relay host smtp.qq.com > HELO localhost 250 smtp.qq.com > AUTH LOGIN ODA1Nzk1OTU1QHFxLmNvbQ== 530 Must issue a STARTTLS command first. Error: Remote host returned "530 Must issue a STARTTLS command first." Error: Error occurred while sending HELO command. Error: Cannot send email to <1150366147@qq.com> Disconnected from remote host
Baidu で検索しましたが、明確な答えが見つかりませんでした。 。このような問題が発生した場合は、以下にメッセージを残してください。話し合います。
ここでは 2 番目の方法を使用しています。
Phpmail の具体的な利点と欠点については詳しく説明しません。さらに詳しく知りたい場合は、百度にアクセスしてください。
最初のステップは phpmailer を取得することです
PHPMailer プロジェクト アドレス: https://github.com/PHPMailer/PHPMailer
; git コマンドを使用しますローカルにクローンを作成するか、プロジェクト ページの右下隅にある [ZIP をダウンロード] を直接クリックして完全な PHPMailer コード パッケージを取得し、ローカルで解凍します。
2 番目のステップは、サーバー サポートを有効にすることです。
phpmailer を使用するには、サーバーでソケットと openssl サービスを有効にする必要があります。
#3 番目のステップは、phpmailer をサーバーにアップロードすることです。
ここでは thinkphp5 フレームワークを使用しており、ルート ディレクトリの下の extend ディレクトリにアップロードしました。
実際には、このステップを個別に説明する必要はありません。ただし、github からダウンロードしたプロジェクト ファイルのすべてが役立つわけではありません。サーバーにアップロードできるのは、いくつかのメイン ファイルのみです。
4 番目のステップは、メール送信のパブリック メソッドとその呼び出しメソッドをエンコードすることです
メール送信のパブリック メソッド:
/*发送邮件方法 *@param $to:接收者 $title:标题 $content:邮件内容 *@return bool true:发送成功 false:发送失败 */ function sendMail($to,$title,$content){ //引入PHPMailer的核心文件 使用require_once包含避免出现PHPMailer类重复定义的警告 require_once("phpmailer/class.phpmailer.php"); require_once("phpmailer/class.smtp.php"); //实例化PHPMailer核心类 $mail = new PHPMailer(); //是否启用smtp的debug进行调试 开发环境建议开启 生产环境注释掉即可 默认关闭debug调试模式 $mail->SMTPDebug = 1; //使用smtp鉴权方式发送邮件 $mail->isSMTP(); //smtp需要鉴权 这个必须是true $mail->SMTPAuth=true; //链接qq域名邮箱的服务器地址 $mail->Host = 'smtp.qq.com'; //设置使用ssl加密方式登录鉴权 $mail->SMTPSecure = 'ssl'; //设置ssl连接smtp服务器的远程服务器端口号,以前的默认是25,但是现在新的好像已经不可用了 可选465或587 $mail->Port = 465; //设置smtp的helo消息头 这个可有可无 内容任意 // $mail->Helo = 'Hello smtp.qq.com Server'; //设置发件人的主机域 可有可无 默认为localhost 内容任意,建议使用你的域名 $mail->Hostname = 'https://guanchao.site'; //设置发送的邮件的编码 可选GB2312 我喜欢utf-8 据说utf8在某些客户端收信下会乱码 $mail->CharSet = 'UTF-8'; //设置发件人姓名(昵称) 任意内容,显示在收件人邮件的发件人邮箱地址前的发件人姓名 $mail->FromName = 'LSGO实验室'; //smtp登录的账号 这里填入字符串格式的qq号即可 $mail->Username ='805795955@qq.com'; //smtp登录的密码 使用生成的授权码(就刚才叫你保存的最新的授权码) $mail->Password = '****************'; //设置发件人邮箱地址 这里填入上述提到的“发件人邮箱” $mail->From = '805795955@qq.com'; //邮件正文是否为html编码 注意此处是一个方法 不再是属性 true或false $mail->isHTML(true); //设置收件人邮箱地址 该方法有两个参数 第一个参数为收件人邮箱地址 第二参数为给该地址设置的昵称 不同的邮箱系统会自动进行处理变动 这里第二个参数的意义不大 $mail->addAddress($to,'时间里的博客在线通知'); //添加多个收件人 则多次调用方法即可 // $mail->addAddress('**********@qq.com','时间里的博客在线通知'); //添加该邮件的主题 $mail->Subject = $title; //添加邮件正文 上方将isHTML设置成了true,则可以是完整的html字符串 如:使用file_get_contents函数读取本地的html文件 $mail->Body = $content; //为该邮件添加附件 该方法也有两个参数 第一个参数为附件存放的目录(相对目录、或绝对目录均可) 第二参数为在邮件附件中该附件的名称 // $mail->addAttachment('./d.jpg','mm.jpg'); //同样该方法可以多次调用 上传多个附件 // $mail->addAttachment('./Jlib-1.1.0.js','Jlib.js'); $status = $mail->send(); //简单的判断与提示信息 if($status) { return true; }else{ return false; } }
呼び出し方法 :
ここでは単純な呼び出しを行っているだけです。必要なコンテンツは自分のニーズに基づいて決定してください。
public function sendEmail() { $flag = sendMail('805795955@qq.com','时间里的博客在线通知','欢迎来到时间里的博客'); if($flag){ echo true; }else{ echo false; } }
上記は、phpmailer を使用してメールを送信する実装プロセス全体です。
元のアドレス: https://juejin.cn/post/7083661334214082574
著者: Camellia
推奨学習: 「PHP ビデオ」チュートリアル###"###
以上がある記事では、phpmailer を使用して PHP にメール送信機能を実装する方法を説明します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

文字列は、文字、数字、シンボルを含む一連の文字です。このチュートリアルでは、さまざまな方法を使用してPHPの特定の文字列内の母音の数を計算する方法を学びます。英語の母音は、a、e、i、o、u、そしてそれらは大文字または小文字である可能性があります。 母音とは何ですか? 母音は、特定の発音を表すアルファベットのある文字です。大文字と小文字など、英語には5つの母音があります。 a、e、i、o、u 例1 入力:string = "tutorialspoint" 出力:6 説明する 文字列「TutorialSpoint」の母音は、u、o、i、a、o、iです。合計で6元があります

あなたが経験豊富な PHP 開発者であれば、すでにそこにいて、すでにそれを行っていると感じているかもしれません。あなたは、運用を達成するために、かなりの数のアプリケーションを開発し、数百万行のコードをデバッグし、大量のスクリプトを微調整してきました。

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

PHPの魔法の方法は何ですか? PHPの魔法の方法には次のものが含まれます。1。\ _ \ _コンストラクト、オブジェクトの初期化に使用されます。 2。\ _ \ _リソースのクリーンアップに使用される破壊。 3。\ _ \ _呼び出し、存在しないメソッド呼び出しを処理します。 4。\ _ \ _ get、dynamic属性アクセスを実装します。 5。\ _ \ _セット、動的属性設定を実装します。これらの方法は、特定の状況で自動的に呼び出され、コードの柔軟性と効率を向上させます。
