Heroku PHP アプリで Aspose.Email Cloud を使用してメールを送信する

Heroku PHP アプリを設定する方法と、PHP アプリケーションで電子メールを送信するために Aspose.Email Cloud を使用する方法に関するチュートリアルです。

このブログでは、Heroku (PHP アプリ) へのデプロイ方法について説明します。この記事では、Aspose.Email Cloud を理解し、Heroku PHP アプリを使用して電子メールを送信する方法について説明します。この記事では、無料の Heroku アカウントがすでにセットアップされており、PHP と Composer がローカルにインストールされていることを前提としています。さあ、始めましょう!

Herokuのセットアップ

開始するには、まず Heroku コマンドライン インターフェース (CLI) をインストールする必要があります。Heroku CLI は、さまざまなスケーラビリティ タスクの管理と実行に使用されます。これを使用して、アドオンのプロビジョニング、アプリケーション ログの表示、ローカルでのアプリケーションの実行を行うことができます。macOS を使用している場合は、Homebrew を使用してインストールするか、公式 Heroku にアクセスしてください。

brew install heroku/brew/heroku

インストールが完了したら、次のコマンドを実行して、Heroku をローカルで使用するように認証できます。

heroku login
heroku: Press any key to open up the browser to login or q to exit
 ›   Warning: If browser does not open, visit
 ›   https://cli-auth.heroku.com/auth/browser/\*\*\*
heroku: Waiting for login...
Logging in... done
Logged in as me@example.com

このコマンドは、ブラウザを開いて認証用の Heroku ログインページを表示します。これは Heroku と git コマンドの両方が正しく動作するために必要です。

Aspose.Email Cloud のセットアップ

Aspose.Email Cloud は、クラウド メールの送信、受信、追加、フラグ付け、変換を行うクラウド SDK です。また、クラウドでのメール アーカイブ用のフォルダー構造の作成もサポートします。これは使いやすく高速な API で、追加のソフトウェアをインストールする必要はありません。API は、C#、Java、PHP、Python、Ruby、Typescript など、多くのプログラミング言語をサポートしています。Aspose.Email Cloud を設定するには、以下の手順に従ってください。

Aspose.Cloud ダッシュボードにログインし、左側のサイドバーの [アプリケーション] タブをクリックします。次に、下にスクロールして、下の画像に示すように [新しいアプリケーションの作成] ボタンをクリックします。

Aspose.Email Cloud メール送信用アカウントの設定

次に、下の画像に示すように、デフォルトのストレージを選択して新しいアプリケーションを作成します。また、サードパーティのクラウド ストレージを構成する方法 ガイドに従って、サードパーティのストレージを構成してデータ ファイルをアップロードすることもできます。

Aspose.Email Cloud メール送信用アカウントの設定

次に、クライアント資格情報セクションまで下にスクロールして、下の画像に示すように、クライアント ID とクライアント シークレットをコピーします。

Aspose.Email Cloud メール送信用アカウントの設定

Aspose.Email Cloud を使用したメール送信

PHP と Composer がすでにインストールされていることを前提としています。Heroku は PHP プロジェクトの依存関係管理に Composer を使用し、composer.json ファイルはアプリケーションが PHP で記述されていることを Heroku に示します。アプリケーション用のディレクトリを作成してください。

$ mkdir my-email-sending-app
$ cd my-email-sending-app
$ composer require aspose/aspose-email-cloud

index.phpファイルに次のコードを追加します。

include_once(__DIR__.'/vendor/autoload.php'); 
use Aspose\Email\EmailCloud;
use Aspose\Email\Configuration;
use Aspose\Email\Model\EmailDto;
use Aspose\Email\Model\MailAddress;
use Aspose\Email\Model\MailMessageDto;
use Aspose\Email\Model\EmailClientAccount;
use Aspose\Email\Model\StorageFileLocation;
use Aspose\Email\Model\ClientAccountSaveRequest;
use Aspose\Email\Model\ClientMessageSendRequest;
use Aspose\Email\Model\EmailClientAccountPasswordCredentials;

// Setup App Credentials 
$configuration = new Configuration();
$configuration
	->setClientSecret("\*\*\*\*")
	->setClientId("\*\*\*\*");

// Setup the SDK
$api = new EmailCloud($configuration);


$credentials = new EmailClientAccountPasswordCredentials(
    "email", "password");

// Setup an email account for email sending
$sendAccountDto = new EmailClientAccount(
    "smtp@server", 465, "SSLAuto", "SMTP", $credentials);
$smtpAccount = "smtp.account";
$storageName = 'storagename';
$accountFolder = 'myfolder';
$smtpLocation = new StorageFileLocation(
    $storageName, $accountFolder, $smtpAccount);

$api->client()->account()->save(
    new ClientAccountSaveRequest($smtpLocation, $sendAccountDto));

$email = (new EmailDto())
    ->setFrom(new MailAddress("MyName", "my@email.com"))
    ->setTo(array(new MailAddress("Testing", "to@email.com")))
    ->setSubject("Testing Email from PHP")
    ->setBody("Some body from PHP");

$api->client()->message()->send(
    new ClientMessageSendRequest(
        $smtpLocation, new MailMessageDto($email)));

Heroku にデプロイ (PHP アプリ)

すべての変更が完了し、Heroku (PHP アプリ) にデプロイする準備ができたら、次のコマンドを使用して変更を Heroku にプッシュできます。

$ heroku create
Creating sharp-rain-871... done, stack is heroku-18
https://sharp-rain-871.herokuapp.com/ | https://git.heroku.com/sharp-rain-871.git
Git remote heroku added

これにより、Heroku に Git リポジトリが作成され、このリポジトリにプッシュしたものはすべて Heroku (PHP アプリ) にデプロイされます。

$ git push heroku main

これで、heroku open コマンドを使用してアプリケーションを開くことができます。

結論

この記事では、Heroku プラットフォームと Heroku PHP アプリの設定方法について学習しました。また、Aspose.Email Cloud についても説明し、メール送信用の SMTP メール クライアントの設定に使用しました。Aspose.Email Cloud は、メール送信のためだけのものではありません。クラウド メールの送信、受信、追加、フラグ付け、変換を行うクラウド SDK であり、クラウドでのメール アーカイブ用のフォルダー構造の作成もサポートします。これは使いやすく高速な API であり、追加のソフトウェアをインストールする必要はありません。API は、C#、Java、PHP、Python、Ruby、Typescript など、多くのプログラミング言語をサポートしています。この記事がお役に立てば幸いです。

探検する