我想从表单数据生成json。这是我的:Array explode json
<?php
$data = explode(',', $data);
$accounts = [];
foreach ($data as $split) {
$split = explode(':', $split);
$accounts['username'] = trim($split[0]);
$accounts['password'] = $split[1];
}
var_dump(json_encode($accounts));
问题是,它只做循环中的最后一个元素。我知道它为什么这样做,但即时通讯忽略了一些东西,不能正确理解。我想让json成为这个;
{
"Username": "username",
"Password": "username"
},
{
"Username": "username",
"Password": "password"
},
等等什么是最好的方法来解决这个问题?我很可能不会想对..
正如你已经知道你覆盖你的数组键每次迭代。你可能想这样做:'$ accounts [] = [“Username”=> trim($ split [0]),“Passowrd”=> $ split [1]];'我也建议你把'print_r($ accouns);'放到你的foreach循环中,然后一次,然后用你现在的代码和上面提到的代码更改来完成,看看它们的区别。 – Rizier123