1 回答

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超7個(gè)贊
這是一個(gè)演示。我在 MySQL 的測試模式中創(chuàng)建了一個(gè)表:
mysql> use test;
mysql> create table mytable (name varchar(20), eur numeric(9,2), e numeric(9,2));
我編寫了一些 PHP 以使用json_decode()將 JSON 解碼為關(guān)聯(lián)數(shù)組,然后使用鍵和值插入到我創(chuàng)建的 MySQL 表中。
<?php
$pdo = new PDO('mysql:host=127.0.0.1;dbname=test', 'root', 'xxxx');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$data = '{"firstname":{"eur":14.27,"e":0.00612979},"lastname":{"eur":0.18709,"e":2.655e-05},"middlename":{"eur":617.26,"e":1.0}}';
$sql = "INSERT INTO mytable (name, eur, e) VALUES (?, ?, ?)";
$stmt = $pdo->prepare($sql);
foreach(json_decode($data, true) as $name => $values) {
$stmt->execute([$name, $values['eur'], $values['e']]);
}
我在我的 bash 命令行中運(yùn)行了 PHP。
php json-demo.php
下面是顯示結(jié)果的 SQL 查詢:
mysql> select * from mytable;
+------------+--------+------+
| name | eur | e |
+------------+--------+------+
| firstname | 14.27 | 0.01 |
| lastname | 0.19 | 0.00 |
| middlename | 617.26 | 1.00 |
+------------+--------+------+
對(duì)于它的價(jià)值,您顯示的 JSON 示例不是 JSON 數(shù)組,它是一個(gè) JSON 對(duì)象。
花括號(hào)內(nèi)的鍵/值{ }對(duì)使它成為一個(gè)對(duì)象。
數(shù)組是方括號(hào)內(nèi)以逗號(hào)分隔的列表[ ]。
- 1 回答
- 0 關(guān)注
- 203 瀏覽
添加回答
舉報(bào)