所以我了解到,当一个文件上传到Drupal中时,会得到fid
作为回报,您可以在数据库的files表中找到它。我一直在看下面的字符串,我希望有人能解释每个部分。
a:2:{i:0;s:4:"9201";i:1;s:4:"9206";}
我可以看到这里的fid分别是9201和9206,我假设
i:0
和i:1
与文件上传的顺序有关但剩下的是什么?此外,如果重要的话,这个特定的字符串是从带有多文件上载字段的表单数据打印的结果。
最佳答案
当传递一个数组时,它是PHP的serialize()
函数的返回值,相当于:
array(
0 => "9201",
1 => "9206"
)
您可以使用
unserialize()
来反转该过程。Drupal(像许多应用程序一样)将一些设置保存在序列化字符串中,而不是为每个可能的设置创建数据库表。
编辑
只需添加,
a:2
表示要跟随的变量类型是一个包含2个元素的数组,s:4
表示变量类型是一个包含4个字符的字符串。i
表示整数类型。