Skip to content

JorgenEvens/php-cache-dashboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PHP Cache Dashboard

A dashboard for multiple caches in PHP with support for PHP Opcache, APCu, realpath and Redis

Try it out at the demo page.

Prerequisites

  • PHP 5.3+

and one or more of the supported caches

  • PHP OpCache (opcache extension for php5, included by default in php5.5+)
  • APC or APCu extension
  • Realpath cache ( available since PHP 5.3.2+ )
  • Memcache (partially) and Memcached extension
  • Redis

Supported operations

  • View memory statistics
  • View hit rate
  • Select keys based on regular expression
  • Delete keys based on regular expression
  • Selecting all keys
  • Deleting keys without regular expressions
  • Sort on any data column
  • View entry contents

Usage

Simply drop the cache.php file somewhere on your webserver, preferably somewhere private, and that is it! Navigate to the page using your browser and you will receive cache information.

Screenshot of php-cache-dashboard

Configuring caches

Information about specific caches can be disabled by setting the ENABLE_<cache> key to false. The default code tests whether the specific cache is available and supported before enabling it.

APC / APCu

<?php
// Enable APC
define('ENABLE_APC', true);

// Disable APC
define('ENABLE_APC', false);

OPcache

<?php
// Enable OPcache
define('ENABLE_OPCACHE', true);

// Disable OPcache
define('ENABLE_OPCACHE', false);

Realpath

<?php
// Enable Realpath
define('ENABLE_REALPATH', true);

// Disable Realpath
define('ENABLE_REALPATH', false);

Redis

<?php
// Enable Redis
define('ENABLE_REDIS', true);

// Disable Redis
define('ENABLE_REDIS', false);

Redis configuration can be done by either changing the REDIS_ constants or by setting the environment variables with the same name.

Environment Variable Default Description
REDIS_HOST 127.0.0.1 The hostname of the redis instance to connect to
REDIS_PORT 6379 The TCP port number on which Redis is listening for connections
REDIS_PASSWORD null The password used to connect
REDIS_DATABASE null Set this to the database number if you want to lock the database number
REDIS_SIZE null The size of your Redis database in bytes if total size is detected incorrectly

Contributing

I really appreciate any contribution you would like to make, so don't hesitate to report an issue or submit pull requests.

About me

Hi, my name is Jorgen Evens. By day I built things (mainly in PHP and JavaScript) for Ambassify and by night I tinker around with these kinds of projects.