>백엔드 개발 >PHP 튜토리얼 >medoo框架如何将JSON插入到数据库?

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

WBOY
WBOY원래의
2016-06-06 20:22:041589검색

刚开始学习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还有什么好用的数据库工具类?

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.