我正在使用这个 html 和 javascript 将 json 数据发送到我的 php 文件。 http://jsfiddle.net/ExpertSystem/9aWNj/
如何在 php 中从那里访问它以回显给定元素?
类似于以下内容:
$value = json_decode($_POST["newOrder"])
echo $value[1];
ETC
我不确定如何从中检索数据。
我正在使用这个 html 和 javascript 将 json 数据发送到我的 php 文件。 http://jsfiddle.net/ExpertSystem/9aWNj/
如何在 php 中从那里访问它以回显给定元素?
类似于以下内容:
$value = json_decode($_POST["newOrder"])
echo $value[1];
ETC
我不确定如何从中检索数据。
这是一个 jsfiddle,如果您仍然迷路,请查看 javascript 应该如何:http: //jsfiddle.net/9aWNj/3/
这是您通过 php 解码的数据:
`stdClass Object ( [order] => Array ( [0] => 2 [1] => 3 [2] => 4 [3] => 5 [4] => 6 [5] => 7 [6] => 8 [7] => 9 [8] => 10 [9] => 11 [10] => 1 [11] => 12 ) )`
要访问它将是: 示例:
$order_0=$value->order[0];
$order_1=$value->order[1];
或者你对 json_decode 使用 true 会变成这样
$order_0=$value['order'][0];
$order_1=$value['order'][1];
试试这个,它可能会有所帮助
$FP=fopen(JSON_DIR."JsonArray.txt",'r');
$J_ARRAY=fread($FP,filesize(JSON_DIR."JsonArray.txt"));
$J_ARRAY=json_decode($J_ARRAY,JSON_FORCE_OBJECT);
Json_decode 默认以对象的形式返回结果,要获取数组,您需要将第二个参数设置为 true。
$data = json_decode($_POST["newOrder"], false); 将结果作为对象返回
用于打印对象
回声$数据->某事;
$data = json_decode($_POST["newOrder"], true); 以数组形式返回结果
用于打印阵列使用
回声 $data['something'];
尝试这个 :
$value = json_decode($_POST["newOrder"], true)
echo "<pre>";
print_r($value);
请注意第二个参数true
,它将输出作为数组,否则它将是对象。
要像我想你可能想要的那样在 PHP 中使用 json,那么我建议你在 json_decode 函数中放置一个 true。
这将为您提供以下信息:
$json = json_decode($data,true);
$json["sub-values"]["sub thing"];
为什么将 JSON 作为 POST 请求的主体发送?做的更简单:
$.ajax({
url: "<url_to_php_file>",
type: "POST",
data: { order: JSON.stringify(dataArr) }
});
在服务器端使用:
$value = json_decode($_POST["order"]);
echo $value[1];