【问题标题】:Converting an array received via POST into new array将通过 POST 接收的数组转换为新数组
【发布时间】: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


【解决方案1】:

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

$filearray = json_decode($filearray);

【讨论】:

    猜你喜欢
    • 2022-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多