ホームページ >バックエンド開発 >PHPチュートリアル >PHP と MySQL を使用して外部 API から JSON データを取得するにはどうすればよいですか?

PHP と MySQL を使用して外部 API から JSON データを取得するにはどうすればよいですか?

王林
王林オリジナル
2023-07-15 15:41:001737ブラウズ

PHP と MySQL を使用して外部 API から JSON データを取得するにはどうすればよいですか?

現代のアプリケーション開発では、外部 API (アプリケーション プログラミング インターフェイス) によって提供されるデータを取得して処理することがますます一般的になっています。 API は、異なるソフトウェア間でデータを交換するために使用されるテクノロジーであり、開発者が他のアプリケーションやサービスの機能にアクセスして利用できるようにします。中でもJSON(JavaScript Object Notation)は構造化データの送信によく使われるデータ形式です。

この記事では、PHP と MySQL を使用して外部 API から JSON データを取得して処理する方法を学習します。具体的には、PHP の組み込み関数と MySQL のデータベースを使用してこの機能を実装します。

  1. データベース テーブルの作成

まず、外部 API から取得した JSON データを保存するテーブルを MySQL データベースに作成する必要があります。次の SQL ステートメントを使用して、「json_data」という名前のテーブルを作成できます。

CREATE TABLE json_data (
    id INT AUTO_INCREMENT PRIMARY KEY,
    data TEXT,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

このテーブルには 3 つのフィールドがあります。id は自動インクリメントされる主キー、data は JSON データを格納するために使用されるテキスト タイプのフィールド、 created_at データ挿入時刻を記録するために使用されるタイムスタンプ フィールドです。

  1. JSON データの取得

次に、PHP を使用して、外部 API から返される JSON データを取得するコードを記述します。 「example_api」という名前の API からデータを取得したいとします。次のコードを使用できます。

$api_url = "https://example_api.com/data";  // API的URL
$json_data = file_get_contents($api_url);  // 从API获取JSON数据

この例では、PHP の file_get_contents 関数を使用して、指定された URL からデータを取得します。通常、API は JSON 形式の文字列を返します。これは変数 $json_data に保存できます。

  1. JSON データの解析と処理

JSON データを取得したら、それを解析して処理する必要があります。 PHP には、json_decode や json_encode など、JSON データを操作するためのいくつかの組み込み関数が用意されています。

$data = json_decode($json_data, true);  // 将JSON字符串解析为PHP数组

// 处理JSON数据
foreach ($data as $item) {
    $value1 = $item['field1'];
    $value2 = $item['field2'];
    
    // 将数据插入数据库表
    $sql = "INSERT INTO json_data (data) VALUES ('$json_data')";
    $result = mysqli_query($conn, $sql);
}

この例では、json_decode 関数を使用して、JSON 文字列を PHP 配列に解析します。次に、PHP 配列を使用して JSON のフィールドと値にアクセスできます。

データベース テーブルにデータを挿入する部分に注目してください。単純な SQL 挿入ステートメントを使用して、JSON データを「json_data」テーブルに挿入しました。

  1. MySQL データベースへの接続

MySQL データベースにデータを挿入するには、まずデータベースへの接続を確立する必要があります。これは、PHP の mysqli 関数を使用して実現できます。

$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

$conn = mysqli_connect($servername, $username, $password, $dbname);

// 检查连接是否成功
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

この例では、データベース接続情報を変数に入れ、mysqli_connect 関数を使用してデータベースへの接続を確立します。接続に失敗した場合はエラーメッセージが出力されます。

  1. 完全なサンプル コード

これは、外部 API から JSON データを取得し、PHP と MySQL を使用してデータベースに保存する方法を示す完全なサンプル コードです。 ##

$api_url = "https://example_api.com/data";  // API的URL
$json_data = file_get_contents($api_url);  // 从API获取JSON数据

$data = json_decode($json_data, true);  // 将JSON字符串解析为PHP数组

$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

$conn = mysqli_connect($servername, $username, $password, $dbname);

// 检查连接是否成功
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

// 处理JSON数据并将其插入数据库表
foreach ($data as $item) {
    $value1 = $item['field1'];
    $value2 = $item['field2'];
    
    $sql = "INSERT INTO json_data (data) VALUES ('$json_data')";
    $result = mysqli_query($conn, $sql);
}

// 关闭数据库连接
mysqli_close($conn);

これは単なるサンプル コードであり、実際の状況に応じて変更や調整が必要になる場合があることに注意してください。たとえば、実際の API 要件に基づいて URL にパラメータを追加したり、認証に API キーを使用したりする必要がある場合があります。

概要

この記事では、PHP と MySQL を使用して外部 API から JSON データを取得する方法の基本的な手順を紹介します。 JSON データを解析して MySQL データベースに保存することで、外部 API によって提供される構造化データを簡単に取得して処理できます。この記事がお役に立てば幸いです!

以上がPHP と MySQL を使用して外部 API から JSON データを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。