我使用安装在Ubuntu的CURL发送JSON到PHP page.There在那个页面我试图解码JSON数据并存储到数据库。如何检索从终端发布的PHP使用CURL JSON数据
在这里它用于发送JSON
curl -i -X POST -d '{"Customer":{"first_name":"First name","last_name":"last name","email":"[email protected]","addresses":{"address1":"some address","city":"city","country":"CA","first_name":"Mother","last_name":"Lastnameson","phone":"555-1212","province":"ON","zip":"123 ABC"}}}' https://phpserver-chaturasan.c9users.io/listener.php
输出上终端的命令:
HTTP/1.1 200 OK
date: Tue, 19 Jul 2016 05:32:25 GMT
server: Apache/2.4.7 (Ubuntu)
x-powered-by: PHP/5.5.9-1ubuntu4.17
set-cookie: XDEBUG_SESSION=cloud9ide; expires=Tue, 19-Jul-2016 06:32:25 GMT; Max-Age=3600; path=/
set-cookie: XDEBUG_SESSION=cloud9ide; expires=Tue, 19-Jul-2016 06:32:25 GMT; Max-Age=3600; path=/
vary: Accept-Encoding
content-length: 947
keep-alive: timeout=5, max=100
content-type: text/html
X-BACKEND: apps-proxy
/home/ubuntu/workspace/listener.php:11:
string(258) "{"Customer":{"first_name":"First name","last_name":"last name","email":"[email protected]","addresses":{"address1":"some address","city":"city","country":"CA","first_name":"Mother","last_name":"Lastnameson","phone":"555-1212","province":"ON","zip":"123 ABC"}}}"
hello world/home/ubuntu/workspace/listener.php:14:
array(1) {
'Customer' =>
array(4) {
'first_name' =>
string(10) "First name"
'last_name' =>
string(9) "last name"
'email' =>
string(15) "[email protected]"
'addresses' =>
array(8) {
'address1' =>
string(12) "some address"
'city' =>
string(4) "city"
'country' =>
string(2) "CA"
'first_name' =>
string(6) "Mother"
'last_name' =>
string(11) "Lastnameson"
'phone' =>
string(8) "555-1212"
'province' =>
string(2) "ON"
'zip' =>
string(7) "123 ABC"
}
}
}
PHP页代码:
<?php
ini_set("allow_url_fopen", true);
/*if(isset($_POST['Customer'])){
$db = new mysqli("localhost","root","","gen");
$name = $db->real_escape_string($_POST['Scenes']);
$query = "INSERT INTO g SET name = '$name'";
$db->query($query);
}
*/
$jsonStr = file_get_contents("php://input"); //read the HTTP body.
var_dump($jsonStr);
echo "hello world";
$json = json_decode($jsonStr, true);
var_dump($json);
/*db = new mysqli("localhost","root","","gen");
$query = "INSERT INTO g SET name = '$json'";
$db->query($query);*/
?>
但页面的输出是
/home/ubuntu/workspace/listener.php:11: string(0) "" hello world/home/ubuntu/workspace/listener.php:14: NULL
现在我该如何存储JSON数据?
谢谢你的答案我将json文件直接存储到mysql – Chaturasan