gpt4 book ai didi

php - PHP JSON循环在MySQL中存储数据

转载 作者:行者123 更新时间:2023-11-29 18:29:02 34 4
gpt4 key购买 nike

我已经设法为从API源中检索到的数据创建JSON代码,但是不知道如何存储检索到的数据(更简洁的代码可以快速管理和存储数据)

这是我用来检索API数据的代码:(有效)

// VERIFY IF ID IS VALID USING API
$url = $apiURL.$apiKey.$apiSer.$apiJsn.$id;
$json = file_get_contents($url);
$data = json_decode($json);
$verify = $data->{'Response'};

// VERIFY IF RESPONSE IS TRUE
if ($verify == 'True') {

// LOOP
foreach ($data as $key => $jsons) {
// echo $jsons.'<br>';

// HERE I NEED HELP TO STORE THE DATA TO MYSQL!!!

}
} else {

// RETURN ERROR
echo 'RESPONSE IS FALSE';
}
}


来自API的JSON代码:

{"Title":"Title Name",
"Name":"User Name",
"Surname":"User Surname",
"Email":"User Email",
.....................}


我通常会做什么来存储数据:

$query = dbConnect()->prepare("INSERT INTO _users (name, surname, email, ....) VALUES (:1, :2, :3,....)");
$query->bindParam(':1', $name);
$query->bindParam(':2', $surname);
$query->bindParam(':3', $email);
....

if($query->execute()){
echo "<div class='alert alert-success' align='center'>
<strong>Product has been created!</strong>
</div>";
}


JSON API中的值与数据库结构相同。

有没有更好的方法将数据导入我的数据库?

最佳答案

首先改变

$data = json_decode($json);


至,

$data = json_decode($json, true);


以关联数组的形式返回JSON数据,然后假设您只有一行,

   /** Prepare query before the loop not in the loop... **/ 
foreach ($data as $key => $value) {
/** BIND HERE - $key => Title, Name, Surname and Email **/
}

/** Execute here... **/
$stmt->execute();


否则,您将在 foreach循环中执行。

关于php - PHP JSON循环在MySQL中存储数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45881473/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com