如何使用PHP将 JSON 数据插入 MySQL 数据库?
在本文中,我们将看到如何通过 XAMPP 服务器使用PHP将 JSON 数据存储到 MySQL 数据库中。
要求: XAMPP 服务器
简介: PHP是一种开源脚本语言,用于连接数据库和服务器。 MySQL 是一种数据库查询语言,用于管理数据库中的数据以与PHP进行通信。 JSON 代表 JavaScript 对象表示法,它以窄格式存储数据。
结构:
[{
"data1": "value1",
"data2": "value2",
. . .
"datan": "value n"
}]
示例:以下是student.json文件的内容。
[
{
"name": "sravan kumar",
"gender": "Male",
"subject": "Software engineering"
},
{
"name": "sudheer",
"gender": "Male",
"subject": "deep learning"
},
{
"name": "radha",
"gender": "Female",
"subject": "Software engineering"
},
{
"name": "vani",
"gender": "Female",
"subject": "Software engineering"
}
]
- MySQL INSERT语句:它是 用于向数据库中插入数据。
句法:
INSERT INTO table_name(col1, col2, …, col n)
VALUES(value1, value2, …, value n);
使用的方法:
json_decode() 方法:该函数用于将 JSON 对象解码或转换为PHP对象。
句法:
json_decode(string, assoc)
- 字符串是 JSON 数据,assoc 是布尔值。
- 如果 assoc 为true ,则数据将转换为关联数组。
- false是默认值。
方法:
- 启动 XAMPP 服务器
- 在数据库test下创建一个名为student的表。
- 编写PHP代码将 JSON 数据插入学生表。
脚步:
- 启动 XAMPP 服务器。
- 创建一个名为student的表 被测数据库。
- 创建 JSON 数据并将其保存为College_subjects.json下的xampp-htdocs文件夹。
[
{
"name": "sravan kumar",
"gender": "Male",
"subject": "Software engineering"
},
{
"name": "sudheer",
"gender": "Male",
"subject": "deep learning"
},
{
"name": "radha",
"gender": "Female",
"subject": "Software engineering"
},
{
"name": "vani",
"gender": "Female",
"subject": "Software engineering"
}
]
PHP代码:以下是用于存储JSON数据并显示在网页上的PHP代码。
PHP
Geeks for Geeks Import JSON
data into database
localhost
// Username => root
// Password => empty
// Database name => test
// Passing these 4 parameters
$connect = mysqli_connect("localhost", "root", "", "test");
$query = '';
$table_data = '';
// json file name
$filename = "college_subjects.json";
// Read the JSON file in PHP
$data = file_get_contents($filename);
// Convert the JSON String into PHP Array
$array = json_decode($data, true);
// Extracting row by row
foreach($array as $row) {
// Database query to insert data
// into database Make Multiple
// Insert Query
$query .=
"INSERT INTO student VALUES
('".$row["name"]."', '".$row["gender"]."',
'".$row["subject"]."'); ";
$table_data .= '
'.$row["name"].'
'.$row["gender"].'
'.$row["subject"].'
'; // Data for display on Web page
}
if(mysqli_multi_query($connect, $query)) {
echo 'Inserted JSON Data
';
echo '
Name
Gender
Subject
';
echo $table_data;
echo '
';
}
?>
输出:
- 打开浏览器并输入localhost/base。 PHP
- 查看表中插入的数据。
执行视频: