>  기사  >  백엔드 개발  >  PHP中eAccelerator API开发详解

PHP中eAccelerator API开发详解

WBOY
WBOY원래의
2016-07-25 08:53:18773검색
  1. eaccelerator_lock(“count”);
  2. eaccelerator_put(“count”,eaccelerator_get(“count”)+1));
  3. ?>
复制代码

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

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

复制代码

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

复制代码

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

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

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

2、php代码中使用eAccelerator加速 另外,在PHPCMS里面已经集成了对eAccelerator的支持,下面是一段来自PHPCMS里面的代码

  1. class cache

  2. {
  3. function __construct()
  4. {
  5. }
  6. function cache()

  7. {
  8. $this->__construct();
  9. }
  10. function get($name)

  11. {
  12. return eaccelerator_get($name);
  13. }
  14. function set($name, $value, $ttl = 0)

  15. {
  16. eaccelerator_lock($name);
  17. return eaccelerator_put($name, $value, $ttl);
  18. }
  19. function rm($name)

  20. {
  21. return eaccelerator_rm($name);
  22. }
  23. function clear()

  24. {
  25. return eaccelerator_gc();
  26. }
  27. }
复制代码


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.