Maison > développement back-end > tutoriel php > Comment obtenir des données JSON à partir d'une API externe en utilisant PHP et MySQL ?

Comment obtenir des données JSON à partir d'une API externe en utilisant PHP et MySQL ?

王林
Libérer: 2023-07-15 15:42:01
original
1738 Les gens l'ont consulté

Comment obtenir des données JSON à partir d'une API externe en utilisant PHP et MySQL ?

Dans le développement d'applications modernes, l'obtention et le traitement de données fournies par des API externes (Application Programming Interface) sont devenus de plus en plus courants. L'API est une technologie utilisée pour échanger des données entre différents logiciels, qui permet aux développeurs d'accéder et d'utiliser les fonctionnalités d'autres applications ou services. Parmi eux, JSON (JavaScript Object Notation) est un format de données couramment utilisé pour transmettre des données structurées.

Dans cet article, nous apprendrons comment obtenir et traiter des données JSON à partir d'une API externe à l'aide de PHP et MySQL. Plus précisément, nous utiliserons les fonctions intégrées de PHP et la base de données MySQL pour implémenter cette fonctionnalité.

  1. Créer une table de base de données

Tout d'abord, nous devons créer une table dans la base de données MySQL pour stocker les données JSON obtenues à partir de l'API externe. Vous pouvez utiliser l'instruction SQL suivante pour créer une table nommée "json_data" :

CREATE TABLE json_data (
    id INT AUTO_INCREMENT PRIMARY KEY,
    data TEXT,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
Copier après la connexion

Cette table comporte trois champs : id est une clé primaire auto-incrémentée, data est un champ de type texte utilisé pour stocker les données JSON et create_at est utilisé. pour les enregistrements Champ d'horodatage pour l'heure d'insertion des données.

  1. Obtention des données JSON

Ensuite, nous utiliserons PHP pour écrire du code afin d'obtenir les données JSON renvoyées par l'API externe. Supposons que nous souhaitions obtenir des données d'une API nommée "example_api", nous pouvons utiliser le code suivant :

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

Dans cet exemple, nous utilisons la fonction file_get_contents de PHP pour obtenir des données de l'URL spécifiée. Normalement, l'API renverra une chaîne au format JSON, que nous pouvons stocker dans la variable $json_data.

  1. Analyse et traitement des données JSON

Une fois que nous obtenons les données JSON, nous devons les analyser et les traiter. PHP fournit certaines fonctions intégrées pour manipuler les données JSON, telles que json_decode et 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);
}
Copier après la connexion

Dans cet exemple, nous utilisons la fonction json_decode pour analyser une chaîne JSON dans un tableau PHP. Ensuite, nous pouvons utiliser des tableaux PHP pour accéder aux champs et aux valeurs en JSON.

Faites attention à la partie où nous insérons les données dans la table de la base de données. Nous avons utilisé une simple instruction d'insertion SQL pour insérer des données JSON dans la table "json_data".

  1. Connexion à la base de données MySQL

Pour insérer des données dans la base de données MySQL, nous devons d'abord établir une connexion à la base de données. Ceci peut être réalisé en utilisant la fonction mysqli de 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());
}
Copier après la connexion

Dans cet exemple, nous mettons les informations de connexion de la base de données dans une variable et utilisons la fonction mysqli_connect pour établir une connexion à la base de données. Si la connexion échoue, un message d'erreur sera affiché.

  1. Exemple de code complet

Vous trouverez ci-dessous un exemple de code complet qui montre comment obtenir des données JSON à partir d'une API externe et les stocker dans une base de données à l'aide de PHP et 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);
Copier après la connexion

Veuillez noter qu'il ne s'agit que d'un exemple de code, Il faudra peut-être le modifier et l’ajuster en fonction des conditions réelles. Par exemple, vous devrez peut-être ajouter des paramètres à l'URL en fonction des exigences réelles de l'API, utiliser des clés API pour l'authentification, etc.

Résumé

Cet article présente les étapes de base pour utiliser PHP et MySQL pour obtenir des données JSON à partir d'une API externe. En analysant les données JSON et en les stockant dans une base de données MySQL, nous pouvons facilement obtenir et traiter des données structurées fournies par des API externes. J'espère que cet article vous aidera !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal