将通过POST接收的数组转换为新数组

时间:2014-03-03 02:28:46

标签: php arrays json forms post

我通过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 />";
}

1 个答案:

答案 0 :(得分:1)

要通过PHP解析JSON,您需要使用json_decode()

$filearray = json_decode($filearray);