Heim  >  Artikel  >  Backend-Entwicklung  >  medoo框架如何将JSON插入到数据库?

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

WBOY
WBOYOriginal
2016-06-06 20:22:041550Durchsuche

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

<code>$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"]
    ]
]);</code>

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

<code>{
    "name" : "xiaoming",
    "age" : 20
},
{
    "name" : "lihong",
    "age" : 25
}
</code>

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

回复内容:

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

<code>$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"]
    ]
]);</code>

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

<code>{
    "name" : "xiaoming",
    "age" : 20
},
{
    "name" : "lihong",
    "age" : 25
}
</code>

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

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

假设你传过来的数据是:

<code>[
    {"name": "xiaoming", "age": 20},
    {"name": "lihong", "age": 25}
]
</code>

那么你可以这么写:

<code>$_POST = json_decode( file_get_contents('php://input'), true);
$last_user_id = $database->insert("account", $_POST);</code>

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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn