编辑:我正在尝试将 2 个数组合并在一起,说我想向 json 数据添加一个新数组,而不删除值中已有的 json 数据。
例:$chatjson = [] 包含一些 JSON 数据,如下所示:
$chatjson = [{"sender":"Testing","message":"Hi"}]
我想在添加另一个数组时保留该数据,使其看起来像这样
$chatjson = [{"sender":"Testing","message":"Hi"},{"sender":"Testing","message":"Message 2!"}]
应该支持我的问题。
<?php
include '../filter.php';
$chatjson = [];
$sender = SecurePost($_POST["sender"]);
$message = SecurePost($_POST["message"]);
if ($sender || $message) {
$chatarray = array('sender' => $sender, 'message' => $message);
$decodejson = json_decode($chatjson, true);
$merge = array_merge((array)$chatarray, (array)$decodejson);
$chatjson = json_encode($merge);
echo $chatjson;
}
?>
你需要稍微改变你的代码:-
<?php
include '../filter.php';
$chatjson = Array(); // define array like this
$sender = SecurePost($_POST["sender"]);
$message = SecurePost($_POST["message"]);
if ($sender || $message) {
$chatarray[] = array('sender' => $sender, 'message' => $message); // assign values every time to a new index.
$decodejson = json_decode($chatjson, true);
$merge = array_merge((array)$chatarray, (array)$decodejson); // push the new data
$chatjson = json_encode($merge);
echo $chatjson;
}
?>