php - 文件上传返回值

标签 php mysql drupal

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

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

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

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

最佳答案

它是 PHP 的 serialize() 的返回值传递等价于以下内容的数组时的函数:

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

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

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

编辑

补充一下,a:2 表示后面的变量类型是一个有 2 个元素的数组,s:4 表示变量的类型是一个字符串4 个字符。 i 表示整数类型。

关于php - 文件上传返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8811754/

相关文章:

Drupal 7 文件系统错误 : The directory sites/default/files exists but is not writable and could not be made writable

php - 配置 PHP 5.3 以与 MS SQL Server 一起使用

php - 我需要制作 2 个 C++ 脚本来在两个不同的平台 Windows Mobile 和 PHP 服务器上压缩和解压缩字符串

php - yii2 pdf 生成不工作

javascript - 为什么我的 mysql 日期在 javascript 中减少一天?

javascript - 使用 $http.post 和 resangular post 时出现 SyntaxError : Unexpected token F,

php - date_parse_from_format 到 unix 时间戳

MySQL 查询在列值上具有不同的值

mysql - 数据库设计以获得尽可能多的统计数据

php - Drupal 是否支持持久数据库连接?