Projet

Général

Profil

Paste
Télécharger au format
Statistiques
| Branche: | Révision:

root / plugins / php / php_apc.php @ f76c34f5

Historique | Voir | Annoter | Télécharger (1,46 ko)

1
<?php
2
$ret = array();
3

    
4
// Detect APC functions to call.
5
$apc_fn_name = "";
6
if(function_exists("apcu_cache_info") && function_exists("apcu_sma_info"))
7
{
8
  $apc_fn_name = "apcu";
9
} elseif (function_exists("apc_cache_info") && function_exists("apc_sma_info"))
10
{
11
  $apc_fn_name = "apc";
12
}
13

    
14
if(!empty($apc_fn_name))
15
{
16
  switch ($_GET["act"])
17
  {
18
    case "memory":
19
      $tmp = call_user_func($apc_fn_name . "_sma_info");
20
      $ret["mem_used"] = $tmp["seg_size"]-$tmp["avail_mem"];
21
      $ret["mem_avail"] = $tmp["avail_mem"];
22
      break;
23
    case "hits":
24
      $tmp =  call_user_func($apc_fn_name . "_cache_info");
25
      $ret["num_hits"] = $tmp["num_hits"];
26
      $ret["num_misses"] = $tmp["num_misses"];
27
      break;
28
    case "percents":
29
      $tmp =  call_user_func($apc_fn_name . "_sma_info");
30
      $ret["memory"] = 100-(($tmp["avail_mem"] / $tmp["seg_size"])*100);
31
      $tmp = apcu_cache_info();
32
      $ret["hits"] = ($tmp["num_hits"] / ( $tmp["num_hits"]+$tmp["num_misses"]) ) * 100;
33
      $ret["misses"] = ($tmp["num_misses"] / ( $tmp["num_hits"]+$tmp["num_misses"]) ) * 100;
34
      break;
35
  }
36

    
37
} else {
38

    
39
  switch ($_GET["act"])
40
  {
41
    case "memory":
42
      $ret["mem_size"] = 0;
43
      $ret["mem_used"] = 0;
44
      break;
45
    case "hits":
46
      $ret["num_hits"] = 0;
47
      $ret["num_misses"] = 0;
48
      break;
49
    case "percents":
50
      $ret["memory"] = 0;
51
      $ret["hits"] = 0;
52
      $ret["misses"] = 0;
53
      break;
54
  }
55
}
56

    
57

    
58
  foreach($ret as $key => $val) echo "$key.value $val\n";
59

    
60
?>