【发布时间】:2014-03-03 02:28:45
【问题描述】:
我通过表单上的隐藏输入通过 POST 发送一个数组。我正在使用 JSON 用我需要传递的数组填充这个隐藏字段的值。然后在表单处理程序上我收到数组。但是,当我尝试计算接收到的数组上的项目数时,它说它是一个。似乎当我 $_POST 接收到的变量具有数组格式 ["...","..."] 但它不被识别为一个。我可以将其转换为数组吗?我使用了以逗号分隔的explode(),但分解后的数组使用数组的第一个和最后一个元素维护'['和']'。
HTML:(这里我展示了一个已经填充了值字段的示例)
<input type="hidden" name="uploadFilenames" id="uploadFilenames" value="["64034_397137903702241_1591760198_n.jpg","77089_399984063417625_1968141154_n.jpg"]">
PHP:
$filearray = $_POST['uploadFilenames'];
$numFiles = count($filearray);
for($i = 0; $i < $numFiles; $i++) {
echo $filearray[$i] . "<br />";
}
【问题讨论】:
-
json_decode\encode or serialize\unserialize
-
*序列化/反序列化@Dagon:P
标签: php arrays json forms post