APC缓存文件与缓存变量

时间:2011-02-23 22:04:49

标签: php apc

假设我有一个只包含大数组的文件a.php:

$client = array(
    "a" => 123,
    "b" => 124,
    ...
 );

APC缓存文件a.php,但这究竟是什么意思?它仅为分配缓存操作码?它实际上是否缓存了映射本身?或者我是否需要明确地将其放入APC缓存中?

谢谢!

1 个答案:

答案 0 :(得分:2)

APC以字节代码缓存PHP文件。这是人类可读代码与解释器最终执行的内容之间的更快中介。这类似于将C / C ++文件编译为二进制文件。以这种方式编译的数组将比您在表单文件中读取时加载更快。

在php中访问关联数组中的元素是Big-O中的常量时间O(1)。添加元素也是O(1)。总的来说,它最好将这些数组存储在数据库中,因为它使用更少的内存并且更加灵活。请记住,访问此应用程序的每个浏览器都将拥有自己的此数组副本,就像您使用数据库一样,只有一个副本。例如,如果你想根据它的值查找一个键,你必须迭代它,这是O(n)(这很慢),使用数据库会快得多。