PHPMailerを日本語で使えるようにするラッパークラス
PHP
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
src/OkutaniT add method info to readme Jan 27, 2017
tests del file Jan 27, 2017
.gitignore to change composer Jan 26, 2017
LICENSE add LICENSE Jan 27, 2017
README.md add method info to readme Jan 27, 2017
composer.json fix namespaces Jan 27, 2017

README.md

NPHPMAILER

PHPMailerを日本語で便利に使うラッパークラス

Description

NPHPMailerは、日本語メールをPHPMailerで送信する際に設定するべき「内部エンコーディング」や「文字コードの指定」を内部で設定してくれるラッパークラスです。また、チェーンメソッドを利用して送信できるので、コード量を少なくしてくれます。

Usage

以下の形でメールを送信する。

use OkutaniT\NPHPMailer;

NPHPMailer::_()
    #->setSMTP(ホスト, ユーザー, パスワード) // サーバーで設定していたら不要
    ->setFrom(差出人)
    ->addAddress(宛先)
    ->setSubject(件名)
    ->setBody(内容)
    ->send();

具体的には、次のように利用する。

use OkutaniT\NPHPMailer;

$from      = "from@example.com";
$to        = [
  "myaddress@example.com"
];
$reply     = $_POST["email"];

$mySubject = "お問い合わせがありました";
$myBody    = "名前: " . $_POST["name"] . "\n" .
"メールアドレス: " . $_POST["email"];
$toSubject =  "[自動返信]お問い合わせありがとうございます";
$toBody    =  "以下の内容でメールを送信しました。\n\n" .
"名前: " . $_POST["name"] . "\n" .
"メールアドレス: " . $_POST["email"] . "\n" .
"今後ともよろしくお願いいたします。";

// 自分宛
NPHPMailer::_()
  ->setSMTP("smtp.gmail.com", "〇〇@gmail.com", "Gmailのパスワード") # gmailの場合
  ->setFrom($from)
  ->addAddress($to)
  ->setSubject($mySubject)
  ->setBody($myBody)
  ->send();

// 相手宛(自動返信用)
NPHPMailer::_()
  ->setSMTP("smtp.gmail.com", "〇〇@gmail.com", "Gmailのパスワード")
  ->setFrom($from)
  ->addAddress($reply)
  ->setSubject($toSubject)
  ->setBody($toBody)
  ->send();

HTMLメール

HTMLメールを利用する場合は以下のメソッドを利用します。

->isHTML(true)

添付ファイル

添付ファイルは以下のメソッドを使います。

->addAttachment(ファイルパス, ファイル名, エンコーディング, MIMEタイプ)

CC, BCC

CC, BCCは以下。

->addCC(アドレス, 名前)
->addBCC(アドレス, 名前)

文字コード

文字コードを変更する場合は以下。デフォルトはUTF-8。

->setCharSet("ISO-8859-1")

エンコード

エンコードを変更する場合は以下。デフォルトはbase64。

->setEncoding("8bit")

SMTPデバッグモード

SMTPデバッグモードを利用したい場合は以下。

->setSMTPDebug(true)

Install

composerを使って導入する。ちなみに、NPHPMailer導入時に最新版のPHPMailerが導入されるので、PHPMailerの記述はいらない。

composer.jsonに以下を記述。

{
    "require": {
        "okutani-t/nphpmailer": "~1.0"
    }
}

composer installで導入。

$ composer install

あとは使いたい場所でrequire&useしてあげればOK。

<?php
require __DIR__ . "/vendor/autoload.php";
use OkutaniT\NPHPMailer;

// code...

Contribution

バグを見つけた場合や追加実装をおこなう場合、以下の手順でプルリクエストを送ってください。

1. フォーク&クローン

2. ブランチを切る

$ git checkout -b my-new-feature

3. 変更をコミット

$ git add .
$ git commit -m "修正内容"

4. テスト

$ composer test tests

なお、テスト内容は tests/ 以下に記述してください。

5. プルリクエストを作成

LICENCE

LGPL-2.1

Author

http://okutani.net