【发布时间】:2017-02-28 21:05:43
【问题描述】:
我正在尝试在 mysql 数据库中存储几个表单字段。这些特定字段可以有多个选择值。所以我喜欢将值存储为 json_encode 格式的值。
现在,当我为每个表单字段编码时,我可以将 json 格式的值存储在 mysql db 中。由于重复,我尝试了这个函数,但这会返回一个数组
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":"value1"} 而是 ["value1"]
我忽略了什么??
顺便说一句,这就是为每个领域工作的原因
$tmpArray = array();
$len = count($posted_data["field1"]);
for ($i = 0; $i < $len; $i++) {
$tmpArray[$i] = $posted_data["field1"][$i];
}
$storeValue = json_encode($tmpArray);
【问题讨论】:
-
顺便说一句,你把 $radiodata 放在另一个数组中然后编码它 - 直接编码 $radiodata
-
["value1"]是 valid JSON,它是您在$tmpValue中输入的数据的 JSON 表示形式。为什么你期望它是{"1":"value1"}?您在$tmpValue中输入以索引0开头的值,json_encode()的输出是正确的。 -
这是数值数组和关联数组的区别。
-
你能给我们看看$radiodata的样子吗