我有两个名为$array1
和$array2
和var_dump
给出了
array (size=1)
0 =>
array (size=5)
'userid' => string '8' (length=1)
'useremail' => string 'venkat@gmail' (length=12)
'username' => string 'venkatesh' (length=9)
'password' => string '1111' (length=4)
'Name' => string 'venkatesh' (length=9)
array (size=1)
'modenames' =>
array (size=3)
0 => string 'group 4' (length=7)
1 => string 'group 4' (length=7)
2 => string 'group 4' (length=7)
现在我需要制作像这样的json
{
"userid":"8",
"useremail":"venkat@gmail",
"username":"venkatesh",
"password":"1111",
"Name":"venkatesh",
"modenames":{"group 4","group 4","group 4"}
}
我使用过array_merge()和$ array1 + $ array2都给出了一个不是上面格式的json ..帮帮我。
答案 0 :(得分:1)
在这种情况下,你需要,
$t = [
0 => [
'userid' => '8',
'useremail' => 'venkat@gmail',
'username' => 'venkatesh',
'password' => '1111',
'Name' => 'venkatesh'
]
];
$s = [
'modenames' => [
0 => 'group 4',
1 => 'group 4',
2 => 'group 4',
]
];
$t = $t[0] + $s;
// or
array_merge($t[0], $s);
答案 1 :(得分:1)
像这样求和它们并用JSON_FORCE_OBJECT
标志编码:
$j = json_encode($array1[0]+$array2,JSON_FORCE_OBJECT);
结果:
{"userid":8,"useremail":"venkat@gmail","username":"venkatesh","password":"1111","Name":"venkatesh","modenames":{"0":"group4","1":"group4","2":"group4"}}
答案 2 :(得分:0)
试试这个
$array3 = $array1[0];
$array3['modenames'] = $array2['modenames'];
json_encode($array3);
JSON String =
{"userid":8,
"useremail":"venkat@gmail",
"username":"venkatesh",
"password":"1111",
"Name":"venkatesh",
"modenames":["group 4","group 4","group 4"]
}
作为print_r()
stdClass Object
(
[userid] => 8
[useremail] => venkat@gmail
[username] => venkatesh
[password] => 1111
[Name] => venkatesh
[modenames] => Array
(
[0] => group 4
[1] => group 4
[2] => group 4
)
)
当然你需要
"modenames":{"group 4","group 4","group 4"}
无法正常工作,因为根据我的示例,您需要一个数组出现,或者如果您将其作为对象,则必须为3个数据项和数据中的每一个都设置一个唯一的属性名称。
答案 3 :(得分:-1)
尝试使用合并功能php。如果这对你有好处
$array3= array_merge($array1, $array2);