Dans le développement Web, le stockage et le traitement des données sont généralement une tâche de base, en particulier dans les opérations de base de données et le traitement du format de données. L'extension MySQLI de PHP fournit des fonctions d'interaction de base de données puissantes, et le format JSON, en tant que format d'échange de données léger, a été largement utilisé dans différents scénarios de développement Web.
Dans cet article, nous montrerons comment utiliser la fonction MySQLI :: STMT_INIT en conjonction avec le stockage de données JSON pour obtenir un traitement efficace des données. STMT_INIT est une méthode dans la classe MySQLI pour initialiser un objet de mise en place de préparation, tandis que le format de données JSON convient au stockage et au traitement des données structurées. Grâce à cette combinaison, l'efficacité des opérations de base de données peut être améliorée et l'accès aux données et le traitement peuvent être simplifiés.
MySQLI :: STMT_INIT est une méthode de la classe MySQLI qui est utilisée pour initialiser une nouvelle instruction de préparation. Les déclarations préparées vous permettent de précompiler les instructions de requête SQL, empêchant ainsi les attaques d'injection SQL et améliorant les performances de la requête.
<?php
$mysqli = new mysqli("localhost", "username", "password", "database");
if ($mysqli->connect_error) {
die("Connection failed: " . $mysqli->connect_error);
}
// Initialiser l'objet de l'instruction de préparation
$stmt = $mysqli->stmt_init();
?>
Dans cet exemple, nous créons une nouvelle instance de MySQLI et nous nous connectons à la base de données. Ensuite, nous appelons STMT_INIT pour initialiser un objet d'instruction de préparation.
Les données stockées au format JSON sont très pratiques dans les bases de données, en particulier adaptées aux scénarios où des données structurées ou imbriquées sont nécessaires. Supposons qu'il existe une table utilisateur avec un champ de préférences utilisé pour stocker les données des paramètres utilisateur au format JSON.
Tout d'abord, nous créons une requête SQL contenant des données JSON et insérons les données à l'aide d'une instruction de préparation.
<?php
// Supposons que nous ayons ce qui suit JSON données
$user_data = array(
"theme" => "dark",
"notifications" => true,
"language" => "en"
);
// Volonté PHP Convertir le tableau en JSON Format
$json_data = json_encode($user_data);
// SQL Déclaration de requête
$query = "INSERT INTO users (username, preferences) VALUES (?, ?)";
// Instruction de préparation d'initialisation
if ($stmt->prepare($query)) {
// Lier les paramètres
$stmt->bind_param("ss", $username, $json_data);
// Définir le nom d'utilisateur et JSON données
$username = "john_doe";
// Exécuter une requête
$stmt->execute();
echo "New record created successfully!";
} else {
echo "Error preparing statement: " . $stmt->error;
}
?>
Dans cet exemple, nous convertissons d'abord un tableau PHP (y compris les paramètres utilisateur) en une chaîne JSON et lions les paramètres à l'aide de la méthode bind_param . Les données sont ensuite insérées dans la base de données en exécutant l'instruction de préparation.
En plus d'insérer des données, nous pouvons également lire et traiter les données JSON de la base de données. Supposons que nous souhaitions obtenir les paramètres de l'utilisateur de la table des utilisateurs et analyser les données JSON pour plus de fonctionnement.
<?php
// 查询données库Obtenir用户données
$query = "SELECT username, preferences FROM users WHERE username = ?";
if ($stmt->prepare($query)) {
// Lier les paramètres
$stmt->bind_param("s", $username);
// Définir le nom d'utilisateur
$username = "john_doe";
// Exécuter une requête
$stmt->execute();
// Obtenir des résultats
$stmt->bind_result($username, $json_data);
while ($stmt->fetch()) {
// Analyse JSON données
$preferences = json_decode($json_data, true);
// Sortie des paramètres utilisateur
echo "Theme: " . $preferences['theme'] . "<br>";
echo "Notifications: " . ($preferences['notifications'] ? 'Enabled' : 'Disabled') . "<br>";
echo "Language: " . $preferences['language'] . "<br>";
}
} else {
echo "Error preparing statement: " . $stmt->error;
}
?>
Dans cet exemple de requête, nous lisons les données JSON stockées dans le champ Préférences à partir de la base de données et la convertissez en un tableau PHP à l'aide de la fonction JSON_DECODE . Nous pouvons ensuite accéder facilement aux données dedans et l'afficher sur la page.
Dans certains scénarios d'application, il peut être nécessaire d'interagir avec les systèmes externes via URL. Supposons que nous devons obtenir des données JSON à partir d'une API externe et les stocker dans la base de données. Nous pouvons utiliser File_get_Contents ou Curl pour obtenir des données de l'API et les stocker au format JSON.
<?php
// Supposons que nous API Obtenir JSON données
$api_url = "https://m66.net/api/user/preferences"; // Remplacer par réel API URL
// Obtenir API réponse
$response = file_get_contents($api_url);
// VolontéréponsedonnéesAnalyse为 PHP Tableau
$preferences_data = json_decode($response, true);
// VolontéObtenir到的 JSON données插入données库
$query = "INSERT INTO users (username, preferences) VALUES (?, ?)";
if ($stmt->prepare($query)) {
// Lier les paramètres
$stmt->bind_param("ss", $username, $json_data);
// Définir le nom d'utilisateur et JSON données
$username = "john_doe";
$json_data = json_encode($preferences_data);
// Exécuter une requête
$stmt->execute();
echo "User preferences stored successfully!";
} else {
echo "Error preparing statement: " . $stmt->error;
}
?>
Dans cet exemple, nous obtenons des données de préférence utilisateur de l'API de M66.NET et les stockons dans la base de données au format JSON.
En combinant MySQLI :: STMT_INIT et JSON Data Storage, nous pouvons traiter et stocker efficacement les données structurées. L'utilisation des instructions de préparation peut non seulement améliorer l'efficacité des opérations de base de données, mais également empêcher efficacement les attaques d'injection SQL. Le format JSON nous fournit une méthode de stockage de données flexible et facile à utiliser, ce qui est idéal pour stocker des informations telles que la configuration ou les préférences utilisateur.
Dans les applications pratiques, les instructions de requête et les méthodes de stockage des données peuvent être ajustées en fonction des différents besoins, ce qui rend l'ensemble du processus de traitement des données plus efficace et sécurisé.