PHPを使用してGoogleクライアントから受信トレイメッセージを取得する方法


  1. Google APIクライアントをインストールする: 最初に、Google APIクライアントをインストールする必要があります。Composerを使用してインストールできます。以下のコマンドを実行してください。

    composer require google/apiclient
    • Google Developers Consoleにアクセスします: https://console.developers.google.com/
    • 「プロジェクトを作成」ボタンをクリックし、プロジェクトの詳細を入力します。
    • 「APIとサービス」> 「ダッシュボード」に移動し、Gmail APIを有効にします。
    • 「認証情報」> 「認証情報を作成」ボタンをクリックし、OAuth 2.0 クライアントIDを作成します。認証情報のタイプは「デスクトップ アプリ」を選択します。
    • クライアントIDとクライアントシークレットをメモしておきます。
  2. PHPコードを作成する: 以下のPHPコードを使用して、Googleクライアントを初期化し、Gmail APIを使用して受信トレイメッセージを取得します。

    <?php
    require_once 'vendor/autoload.php';
    $client = new Google_Client();
    $client->setApplicationName('Gmail API PHP Quickstart');
    $client->setScopes(Google_Service_Gmail::GMAIL_READONLY);
    $client->setAuthConfig('path/to/client_secret.json');
    $client->setAccessType('offline');
    // 認証を行います。認証が必要な場合は、ブラウザで認証プロセスが開始されます。
    if ($client->isAccessTokenExpired()) {
       $client->fetchAccessTokenWithRefreshToken($client->getRefreshToken());
       file_put_contents('path/to/access_token.json', json_encode($client->getAccessToken()));
    }
    // Gmailサービスを初期化します。
    $service = new Google_Service_Gmail($client);
    // 受信トレイメッセージを取得します。
    $results = $service->users_messages->listUsersMessages('me', ['labelIds' => 'INBOX']);
    if (count($results->getMessages()) == 0) {
       echo "No messages found.";
    } else {
       echo "Messages:\n";
       foreach ($results->getMessages() as $message) {
           echo "- " . $message->getId() . "\n";
       }
    }

    このコードでは、vendor/autoload.phpファイルのパス、path/to/client_secret.jsonファイルのパス、およびpath/to/access_token.jsonファイルのパスを適切に設定する必要があります。

  3. 実行して結果を確認する: 上記のコードを適切に設定し、PHPスクリプトを実行してください。受信トレイにあるメッセージのIDが表示されるはずです。

GoogleのPHPクライアントを使用して、Gmailの受信トレイメッセージを取得する方法を以下に示します。以下の手順に従ってください。

  1. Google APIクライアントをインストールする: 最初に、Google APIクライアントをインストールする必要があります。Composerを使用してインストールできます。以下のコマンドを実行してください。

    composer require google/apiclient
    • Google Developers Consoleにアクセスします: https://console.developers.google.com/
    • 「プロジェクトを作成」ボタンをクリックし、プロジェクトの詳細を入力します。
    • 「APIとサービス」> 「ダッシュボード」に移動し、Gmail APIを有効にします。
    • 「認証情報」> 「認証情報を作成」ボタンをクリックし、OAuth 2.0 クライアントIDを作成します。認証情報のタイプは「デスクトップ アプリ」を選択します。
    • クライアントIDとクライアントシークレットをメモしておきます。
  2. PHPコードを作成する: 以下のPHPコードを使用して、Googleクライアントを初期化し、Gmail APIを使用して受信トレイメッセージを取得します。

    <?php
    require_once 'vendor/autoload.php';
    $client = new Google_Client();
    $client->setApplicationName('Gmail API PHP Quickstart');
    $client->setScopes(Google_Service_Gmail::GMAIL_READONLY);
    $client->setAuthConfig('path/to/client_secret.json');
    $client->setAccessType('offline');
    // 認証を行います。認証が必要な場合は、ブラウザで認証プロセスが開始されます。
    if ($client->isAccessTokenExpired()) {
       $client->fetchAccessTokenWithRefreshToken($client->getRefreshToken());
       file_put_contents('path/to/access_token.json', json_encode($client->getAccessToken()));
    }
    // Gmailサービスを初期化します。
    $service = new Google_Service_Gmail($client);
    // 受信トレイメッセージを取得します。
    $results = $service->users_messages->listUsersMessages('me', ['labelIds' => 'INBOX']);
    if (count($results->getMessages()) == 0) {
       echo "メッセージが見つかりませんでした。";
    } else {
       echo "メッセージ:\n";
       foreach ($results->getMessages() as $message) {
           echo "- " . $message->getId() . "\n";
       }
    }

    このコードでは、vendor/autoload.phpファイルのパス、path/to/client_secret.jsonファイルのパス、およびpath/to/access_token.jsonファイルのパスを適切に設定する必要があります。

  3. 実行して結果を確認する: 上記のコードを適切に設定し、PHPスクリプトを実行してください。受信トレイにあるメッセージのIDが表示されるはずです。

これでGoogleクライアントを使用してPHPでGmailの受信トレイメッセージを取得する方法がわかりました。