【コピペで動く】PHPでGemini APIに接続する超シンプルな方法

PHPを使ってGoogleの強力なAI「Gemini API」に接続し、テキストを生成する最もシンプルな手順を解説します。

ネット上の古い記事を参考にすると、既に提供が終了している古いモデル(gemini-1.5-flashなど)が指定されており、エラーで動かないことがよくあります。この記事では、最新モデル(gemini-3.6-flash) に対応した動作確認済みのコードを紹介します。

準備するもの

PHPが動く環境が必要です(ローカル環境やレンタルサーバーなど)。

💡 ローカル環境でテストする場合の注意 PHPファイルは、ブラウザで直接ファイルを開くだけ(file://...)では動作しません。 ローカルPCで試す場合は、XAMPP / MAMP / Local などのローカル開発環境を用意するか、PHPの組み込みサーバー(php -S localhost:8000)を起動した上でアクセスしてください。

Gemini APIキー Google AI Studio(無料)にアクセスし、「Get API key」から取得しておきます。

コピペ用:Gemini API接続コード

以下のコードを gemini_test.php などの名前で保存し、YOUR_GEMINI_API_KEY の部分を取得したAPIキーに書き換えてください。

<?php
header('Content-Type: text/html; charset=utf-8');

// 1. APIキーの設定(取得したAPIキーに書き換えてください)
$api_key = 'YOUR_GEMINI_API_KEY';

// 2. リクエスト先URL(最新の安定板 gemini-3.6-flash を指定)
$url = 'https://generativelanguage.googleapis.com/v1beta/models/gemini-3.6-flash:generateContent?key=' . $api_key;

// 3. 送信するデータ(プロンプト)
$data = [
    'contents' => [
        [
            'parts' => [
                ['text' => 'こんにちは!自己紹介を短く一言でしてください。']
            ]
        ]
    ]
];

// 4. cURLでGemini APIへリクエスト送信
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));

$response = curl_exec($ch);
curl_close($ch);

// 5. 結果の抽出と表示
$result = json_decode($response, true);

// 回答テキストの取り出し
$reply = $result['candidates'][0]['content']['parts'][0]['text'] ?? 'エラー:応答を取得できませんでした。';

echo "<h2>Geminiからの回答:</h2>";
echo "<p>" . nl2br(htmlspecialchars($reply)) . "</p>";

ファイルの設置場所と動かし方(実行手順)

コードの書き換え(APIキーの設定)が終わったら、サーバーに配置して実行してみましょう!

1. コードをサーバーのどこに保存するか?

作成した gemini_test.php は、レンタルサーバー(ConoHa WINGやエックスサーバー等)のWeb公開用フォルダ(ドキュメントルート)にアップロードします。

  • 主な保存先の場所(例):
    • public_html/ 直下
    • または public_html/あなたのドメイン名/ 直下
  • 整理したい場合のおすすめ:
    ファイルが増えて散らかるのを防ぐため、testai-lab といったフォルダを1つ作成し、その中に保存するのがおすすめです。
    • 例: public_html/ai-lab/gemini_test.php

💡 補足: レンタルサーバーの「ファイルマネージャー機能」や、VS CodeのSFTP連携・FTPソフト(FileZilla等)を使ってアップロードすれば完了です。

2. 呼び出し・実行方法(どうやって動かすの?)

ファイルの設置ができたら、お使いのWebブラウザ(ChromeやSafariなど)のアドレスバーに直接ファイルのURLを入力してアクセスします。

  • 呼び出しURLの例:
    • 公開フォルダ直下に保存した場合: https://あなたのドメイン/gemini_test.php
    • ai-lab フォルダ内に保存した場合: https://あなたのドメイン/ai-lab/gemini_test.php

URLにアクセスすると、PHPが裏側でGemini APIへリクエストを送信し、数秒後に画面上へ 「Geminiからの回答: (AIの自己紹介)」 が表示されます!

ここでつまずかない!注意点とよくあるエラー

1. 404 Not Found エラーが出る場合

エンドポイントURLのモデル名が間違っているか、古い可能性があります。Geminiのモデルはアップデートが早いため、過去の gemini-1.5-flashgemini-2.5-flash などを指定するとエラーになる場合があります。必ず公式ドキュメントで現在の最新モデル名(今回は gemini-3.6-flash)を確認してください。

2. cURLが有効になっていない

PHPの環境によっては cURL 拡張機能が無効になっている場合があります。php.ini を確認し、extension=curl のコメントアウトを外して有効化してください。

次のステップ:動的なWebアプリへの応用

今回は固定のテキスト(「こんにちは!自己紹介を…」)を送信しましたが、このコードの $data 内の text の部分を、HTMLフォーム($_POST)から受け取った値に書き換えるだけで、ユーザーが自由に入力できるオリジナルのAIチャットボットや便利ツールを簡単に自作できます。(チャットボットの例はこのサイトで公開する予定です。)

ぜひ、アイデアを形にしてみてください!


コメント

タイトルとURLをコピーしました