Heim  >  Artikel  >  Backend-Entwicklung  >  Wie erhalte ich JSON-Daten von einer externen API mit PHP und MySQL?

Wie erhalte ich JSON-Daten von einer externen API mit PHP und MySQL?

王林
王林Original
2023-07-15 15:41:001686Durchsuche

Wie erhalte ich JSON-Daten von einer externen API mit PHP und MySQL?

In der modernen Anwendungsentwicklung ist die Beschaffung und Verarbeitung von Daten, die von externen APIs (Application Programming Interface) bereitgestellt werden, immer häufiger geworden. API ist eine Technologie zum Austausch von Daten zwischen verschiedenen Softwareprogrammen, die es Entwicklern ermöglicht, auf die Funktionalität anderer Anwendungen oder Dienste zuzugreifen und diese zu nutzen. Unter diesen ist JSON (JavaScript Object Notation) ein häufig verwendetes Datenformat zur Übertragung strukturierter Daten.

In diesem Artikel erfahren Sie, wie Sie JSON-Daten von einer externen API mithilfe von PHP und MySQL abrufen und verarbeiten. Konkret werden wir die integrierten Funktionen von PHP und die Datenbank von MySQL verwenden, um diese Funktionalität zu implementieren.

  1. Datenbanktabelle erstellen

Zuerst müssen wir eine Tabelle in der MySQL-Datenbank erstellen, um die von der externen API erhaltenen JSON-Daten zu speichern. Sie können die folgende SQL-Anweisung verwenden, um eine Tabelle mit dem Namen „json_data“ zu erstellen:

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

Diese Tabelle hat drei Felder: „id“ ist ein automatisch inkrementierter Primärschlüssel, „data“ ist ein Feld vom Typ Text, das zum Speichern von JSON-Daten verwendet wird, und „created_at“ wird verwendet für Datensätze Zeitstempelfeld für die Dateneinfügungszeit.

  1. JSON-Daten abrufen

Als Nächstes schreiben wir mit PHP Code, um die von der externen API zurückgegebenen JSON-Daten abzurufen. Angenommen, wir möchten Daten von einer API namens „example_api“ abrufen, können wir den folgenden Code verwenden:

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

In diesem Beispiel verwenden wir die Funktion file_get_contents von PHP, um Daten von der angegebenen URL abzurufen. Normalerweise gibt die API einen JSON-formatierten String zurück, den wir in der Variablen $json_data speichern können.

  1. JSON-Daten analysieren und verarbeiten

Sobald wir die JSON-Daten erhalten haben, müssen wir sie analysieren und verarbeiten. PHP bietet einige integrierte Funktionen zum Bearbeiten von JSON-Daten, wie z. B. json_decode und json_encode.

$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);
}

In diesem Beispiel verwenden wir die Funktion json_decode, um einen JSON-String in ein PHP-Array zu analysieren. Dann können wir PHP-Arrays verwenden, um auf Felder und Werte in JSON zuzugreifen.

Achten Sie auf den Teil, in dem wir Daten in die Datenbanktabelle einfügen. Wir haben eine einfache SQL-Einfügeanweisung verwendet, um JSON-Daten in die Tabelle „json_data“ einzufügen.

  1. Mit MySQL-Datenbank verbinden

Um Daten in die MySQL-Datenbank einzufügen, müssen wir zunächst eine Verbindung zur Datenbank herstellen. Dies kann mit der mysqli-Funktion von PHP erreicht werden.

$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());
}

In diesem Beispiel geben wir die Verbindungsinformationen der Datenbank in eine Variable ein und verwenden die Funktion mysqli_connect, um eine Verbindung zur Datenbank herzustellen. Schlägt die Verbindung fehl, wird eine Fehlermeldung ausgegeben.

  1. Vollständiger Beispielcode

Unten finden Sie einen vollständigen Beispielcode, der zeigt, wie Sie JSON-Daten von einer externen API abrufen und mit PHP und MySQL in einer Datenbank speichern:

$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);

Bitte beachten Sie, dass dies nur ein Beispielcode ist. Möglicherweise muss es entsprechend den tatsächlichen Bedingungen geändert und angepasst werden. Beispielsweise müssen Sie möglicherweise Parameter zur URL hinzufügen, die auf tatsächlichen API-Anforderungen basieren, API-Schlüssel zur Authentifizierung verwenden usw.

Zusammenfassung

In diesem Artikel werden die grundlegenden Schritte zur Verwendung von PHP und MySQL zum Abrufen von JSON-Daten von einer externen API vorgestellt. Durch das Parsen von JSON-Daten und deren Speicherung in einer MySQL-Datenbank können wir strukturierte Daten, die von externen APIs bereitgestellt werden, einfach abrufen und verarbeiten. Ich hoffe, dieser Artikel hilft Ihnen!

Das obige ist der detaillierte Inhalt vonWie erhalte ich JSON-Daten von einer externen API mit PHP und MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn