缓存PHP中包含的远程文件

时间:2018-07-19 17:47:27

标签: php

我制作后包含一个远程文件

allow_url_include = On

该文件包含在file.php中的include_once中

include_once ("http://abcd.com/func.php");

我正在使用简单的LAMP堆栈。

我的问题是,对于到达服务器并使用file.php的每个请求,func.php都将从abcd.com中提取。在一个请求中,如果其他文件中多次包含file.php,那么func.php是否每次都会被拉?

1 个答案:

答案 0 :(得分:0)

_once表示每个请求将加载一次文件。但是会在新请求上再次加载它。如果要缓存此文件的某些响应,请在该包含的文件中添加一个return并将结果保存在您喜欢的任何位置。例如在文本文件中(例如,作为JSON字符串)。在下一个请求中,您检查该文件是否存在。

但是,保存在文本文件中可能不是最有效的方法,但可能比每次请求此文件都要快。看看Memcache

包含到var中: $data = include_once('...');(包括必须要有回报)

$data = cached_include('..')(为获取缓存数据而编写的功能)