文件上传返回值

时间:2012-01-10 22:56:00

标签: php mysql drupal

所以我了解到,当在Drupal中上传文件时,您会获得fid作为回报,您可以在数据库的files表中找到它。我一直看到如下所示的字符串,我希望有人可以解释每个部分。

a:2:{i:0;s:4:"9201";i:1;s:4:"9206";}

我可以看到这里的fids分别是9201和9206,我假设i:0i:1与文件上传的顺序有关。但其余部分是什么?

此外,如果重要,此特定字符串是来自具有多文件上载字段的表单数据的print_r的结果。

1 个答案:

答案 0 :(得分:2)

这是传递一个等效于以下数组的PHP serialize()函数的返回值:

array(
  0 => "9201",
  1 => "9206"
)

您可以使用unserialize()反转该过程。

Drupal(与许多应用程序一样)将一些设置保存在序列化字符串中,而不是为每个可能的设置创建数据库表。

修改

只是要添加,a:2表示要遵循的变量类型是一个包含2个元素的数组,s:4表示变量的类型是一个包含4个字符的字符串。 i表示整数类型。