From 01c9d5e240167ac2d9571d5dcdcd9039fbb21c0d Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sun, 25 Jan 2009 19:28:25 +0100 Subject: [PATCH] Add a script for decaching an object --- scripts/decache.php | 59 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 scripts/decache.php diff --git a/scripts/decache.php b/scripts/decache.php new file mode 100644 index 0000000000..b18eaa2cd3 --- /dev/null +++ b/scripts/decache.php @@ -0,0 +1,59 @@ +#!/usr/bin/env php +. + */ + +# Abort if called from a web server +if (isset($_SERVER) && array_key_exists('REQUEST_METHOD', $_SERVER)) { + print "This script must be run from the command line\n"; + exit(1); +} + +ini_set("max_execution_time", "0"); +ini_set("max_input_time", "0"); +set_time_limit(0); +mb_internal_encoding('UTF-8'); + +define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); +define('LACONICA', true); + +require_once(INSTALLDIR . '/lib/common.php'); + +if ($argc < 3 || $argc > 4) { + print "USAGE: decache.php []\n"; + print "Clears the cache for the object in table
with id .\n\n"; + print "If is specified, use that instead of 'id'\n"; + exit(1); +} + +$table = $argv[1]; +$id = $argv[2]; +if ($argc > 3) { + $column = $argv[3]; +} else { + $colum = 'id'; +} + +$object = Memcached_DataObject::staticGet($table, $column, $id); + +if (!$object) { + print "No such '$table' with $column = '$id'.\n"; + exit(1); +} + +$result = $object->decache();