swiftmailerを使って以下の設定で実行するとエラーが出ます。
$message
->setCharset('iso-2022-jp')
->setEncoder(Swift_Encoding::get7BitEncoding()) // 52行目、エラー
ここの行がどうしても解決できないのでヒント、助言をお願いいたします。
いろいろ使っているプラグインもあると思いますが、XAMPPを使っています。
書かなければならないファイルなどや。バージョンがあったら教えてください。
お願いいたします。
// swiftmailer5_4.php <?php // https://php-archive.net/php/swift-mailer/ 参照 // https://stackoverrun.com/ja/q/12418106 参照 require 'vendor/autoload.php'; // アカウントの設定 $config = array( 'host' => 'smtp.gmail.com', 'port' => 587, 'user' => 'sanchunaka@gmail.com', 'pass' => '6BeKxxx', 'encryption' => 'tls' ); // メールの内容 $subject = '件名です'; $body = '本文です'; $from = array('sanchunaka@gmail.com' => '送信者名'); $to = array('sanchunaka@gmail.com' => '受信者名'); // 日本語に関する初期設定 Swift::init(function () { Swift_DependencyContainer::getInstance() ->register('mime.qpheaderencoder') ->asAliasOf('mime.base64headerencoder'); Swift_Preferences::getInstance()->setCharset('iso-2022-jp'); }); // SMTP サーバーとの接続設定 /** @var \Swift_SmtpTransport $transport */ $transport = new Swift_SmtpTransport('smtp.gmail.com', 587, 'tls'); $transport->setUsername($config['user'])->setPassword($config['pass']); $mailer = new Swift_Mailer($transport); //$mailer = Swift_Mailer::newInstance($transport); $mailer->options = array ( 'ssl' => array( 'verify_peer' => false, 'verify_peer_name' => false, 'allow_self_signed' => true)); // メールの作成 $message = new Swift_Message($subject); $message ->setCharset('iso-2022-jp') ->setEncoder(Swift_Encoding::get7BitEncoding()) ->setSubject($subject) ->setFrom($from) ->setTo($to) ->setBody($body); // 送信 $result = $mailer->send($message); /* 実行結果 hiroko@HIROKO711 C:\xampp\htdocs\SwiftMailer_proj\mailer5 # php src/swiftmailer5_4.php PHP Fatal error: Uncaught Error: Class 'Swift_Encoding' not found in C:\xampp\h tdocs\SwiftMailer_proj\mailer5\src\swiftmailer5_4.php:52 Stack trace: #0 {main} thrown in C:\xampp\htdocs\SwiftMailer_proj\mailer5\src\swiftmailer5_4.php on l ine 52 Fatal error: Uncaught Error: Class 'Swift_Encoding' not found in C:\xampp\htdocs \SwiftMailer_proj\mailer5\src\swiftmailer5_4.php:52 Stack trace: #0 {main} thrown in C:\xampp\htdocs\SwiftMailer_proj\mailer5\src\swiftmailer5_4.php on l ine 52 */ ?>コード
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。