欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

eAccelerator加速PHP代码几个例子

程序员文章站 2022-05-01 12:55:42
...

1,eaccelerator_put($key, $value, $ttl=0) 将 $value 以 $key 为键名存进缓存(php4下支持对像类型,看源码好像zend2里不支持了),$ttl 是这个缓存的生命周期,单位是秒,省略该参数或指定为 0 表示不限时,直到服务器重启清空为止。

2,eaccelerator_get($key) 根据 $key 从缓存中返回相应的 eaccelerator_put() 存进去的数据,如果这项缓存已经过期或不存在那么返回值是 NULL

3,eaccelerator_rm($key) 根据 $key 移除缓存

4,eaccelerator_gc() 移除清理所有已过期的 key

5,eaccelerator_lock($key) 为 $key 加上锁定操作,以保证多进程多线程操作时数据的同步。需要调用 eaccelerator_unlock($key) 来释放这个锁或等待程序请求结束时自动释放这个锁。 例如:

  1. eaccelerator_lock("count");
  2. eaccelerator_put("count",eaccelerator_get("count")+1));
  3. ?>
复制代码

6,eaccelerator_unlock($key) 根据 $key 释放锁

7,eaccelerator_cache_output($key, $eval_code, $ttl=0) 将 $eval_code 代码的输出缓存 $ttl 秒,($ttl参数同 eacclerator_put) 例子:

复制代码

8,eaccelerator_cache_result($key, $eval_code, $ttl=0) 将 $eval_code 代码的执行结果缓存 $ttl 秒,($ttl参数同 eacclerator_put),类似 cache_output 例子:

复制代码

9,eaccelerator_cache_page($key, $ttl=0) 将当前整页缓存 $ttl 秒。 例子:

  1. eaccelerator_cache_page($_SERVER['PHP_SELF'].'?GET='.serialize($_GET),30);
  2. echo time();
  3. phpinfo();
  4. ?>
复制代码

10,eaccelerator_rm_page($key) 删除由 eaccelerator_cache_page() 执行的缓存,参数也是 $key。