欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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

程序员文章站 2022-05-26 14:12:45
...
刚开始学习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" => "*",
        "(JSON) lang" => ["en", "jp", "cn"]
    ]
]);

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

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

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

回复内容:

刚开始学习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" => "*",
        "(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);

除了medoo以外,php还有什么好用的数据库工具类?

相关标签: php medoo mysql