-2

我正在为 drupal 编写一个模块。在那我有一个大的关联数组(大约 1000 个条目),它的键为 'string' ,值为 'floats' 。

eg. $array = array('hello' => 122.23, 'name' => 334.3 ....)

我想通过序列化将它存储在数据库中..但是数组大小是动态的,所以我想将它存储在一个文件中以减少访问时间..

我应该在我的 .module 中使用哪些 drupal7 api 函数来创建文件、写入内容并从文件中读取数组,它们如何比等效的 php 文件处理函数更好?

注意 - 此数组不经常使用,因此我不想将其存储为持久变量。

4

1 回答 1

0

我个人不会打扰,我会使用 variable_set() 将其添加为持久变量。变量表使用 longblob,所以我看不出有问题,数据也被缓存以便快速访问。

如果您想创建一个文件并以这种方式存储它,您可以在http://api.drupal.org/api/drupal/includes!file.inc/group/file/7找到所有功能,尽管这样做是这样的将意味着至少对数据库进行一次命中,因为所有文件都通过 file_managed 表。而如果您将其存储为持久变量,则数据已经可供您的模块使用,而无需查询数据库,因为数据已经在 Bootstrap 过程中提取。

于 2012-07-03T11:33:46.833 回答