mar*_*-hi 4 php performance code-generation shared-hosting
我有一个不可修改的功能,需要几秒钟才能完成.该函数返回一个对象数组.结果每天只改变一次.
为了加快速度,我想使用APC缓存结果,但托管服务提供商(共享托管环境)不提供任何内存缓存解决方案(APC,memcache,...).
我找到的唯一解决方案是使用serialize()将数据存储到文件中,然后再将数据反序列化.
如何从数组中生成php源代码?后来我可以简单地打电话
require data.php
将数据导入预定义变量.
谢谢!
更新:存储生成的.html是没有选项,因为输出是用户相关的.
你的意思是这样的吗?
// File: data.php
<?php
return array(
  32,
  42
);
// Another file
$result = include 'data.php';
var_dump($result);
这已经成为可能了.要更新文件,您可以使用类似的内容
file_put_contents('data.php', '<?php return ' . var_export($array, true) . ';');
更新:但是,serialize()/ unserialize()和将序列化数组存储到文件中也没有任何问题.