首页 > medoo框架如何将JSON插入到数据库?

medoo框架如何将JSON插入到数据库?

刚开始学习PHP,medoo的文档insert中提到的插入多条数据:

$last_user_id = $database->insert("account", [
    [
        "user_name" => "foo",
        "email" => "foo@bar.com",
        "age" => 25,
        "city" => "New York",
        "(JSON) lang" => ["en", "fr", "jp", "cn"]
    ],
    [
        "user_name" => "bar",
        "email" => "bar@foo.com",
        "age" => 14,
        "city" => "Hong Kong",
        "(JSON) lang" => ["en", "jp", "cn"]
    ]
]);

请教大神,该如何将post来的数据插入到数据库?能不能给个简单的DEMO?万分感谢!
post来的数据大致如下:

{
    "name" : "xiaoming",
    "age" : 20
},
{
    "name" : "lihong",
    "age" : 25
}

我自己尝试了好多次,都没成功,希望大神能解答,谢谢


如果不是表单提交,也就是说 request header 的 content-type 不等于 application/x-www-form-urlencoded 或者 multipart/form-data 的话,PHP 是没办法自动解析你传递过来的数据并赋值到 $_POST 去的。这个时候你需要使用 php://input 获取所有传递过来的内容并手动解析数据。

假设你传过来的数据是:

[
    {"name": "xiaoming", "age": 20},
    {"name": "lihong", "age": 25}
]

那么你可以这么写:

$_POST = json_decode( file_get_contents('php://input'), true);
$last_user_id = $database->insert("account", $_POST);
【热门文章】
【热门文章】