我想在mysql数据库中存储几个表单域。这些特定字段可以有多个选定的值。所以我喜欢将这个值存储为json_encode格式的值。为什么我的php函数没有返回json格式的值?
现在,当我为每个表单字段编码时,我可以将这些值以json格式存储在mysql数据库中。因为重复我想这功能,但它返回一个数组
function radioValue($radiodata) {
$tmpArray = array();
$tmpArrayLen = count($radiodata);
for ($i = 0; $i < $tmpArrayLen; $i++) {
$tmpArray[$i] = $radiodata[$i];
}
$tmpValue = json_encode($tmpArray);
return $tmpValue;
}
所以不{“1”:“值1”},但[“值1”]
我有什么??忽视
顺便说一句,这就是为什么每场工作的一部分
$tmpArray = array();
$len = count($posted_data["field1"]);
for ($i = 0; $i < $len; $i++) {
$tmpArray[$i] = $posted_data["field1"][$i];
}
$storeValue = json_encode($tmpArray);
另外,你把$ radiodata放在另一个数组中,然后enocde它 - 只是直接enc ode $ radiodata – Mihai
'[“value1”]'是[有效的JSON](https://3v4l.org/XEbg1),它是放在$ tmpValue中的数据的JSON表示。你为什么期望它是'{“1”:“value1”}?你把值放在'$ tmpValue'开始于索引'0','json_encode()'的输出是正确的。 – axiac
这是数字数组和关联之间的区别。 – nerdlyist