在php中缓存包含的远程文件

I am including a remote file after making

allow_url_include = On

The file is included using include_once in file.php

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

I am using simple LAMP stack.

My question is that for every request which comes to the server and uses file.php, func.php will be pulled from abcd.com. Within a request if file.php is included many times in other files will func.php be pulled every time?

The _once means you will load the file once per request. But will load it again on a new request. If you want to cache some response of this file make a return in that included file and save the result anywhere you like. For example in a textfile (i.e. as JSON-string). On the next request you check if that file exists.

However saving in a textfile may not be the most perfomant way to do this, but probably faster than requesting this file every time. Have a look at Memcache

Include into a var: $data = include_once('...'); (include has to have a return)

$data = cached_include('..') (the function you write to get cached data)