http://www.fsf.org/ or write * to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, * MA 02111-1307, USA. * */ // Cache Checking routines function cache_conn ($cache_server, $cache_port="") { // Connect to memcached global $error; if ($cache_port == "") { $cache_port = 11211; } // Return socket pointer $sock = @fsockopen($cache_server, $cache_port, $nn, $nn, 3); // open socket file descriptor, 3 seconds of timeout if ($sock == false) { $error = "Error creating socket file descriptor"; return false; } // Disable socket buffering stream_set_write_buffer($sock, 0); $in = "get cmsdAm_127.0.0.1_XX\r\n"; $r = @fwrite($sock, $in, strlen($in)); // Send command to memcached server if ($r == false) { $error = "Cannot write to socket file descriptor"; return false; } $r = @fgets($sock, 128); // Read response from memcached server (max: 128 bytes) if ($r == false) { $error = "Cannot read to socket file descriptor"; return false; } @fclose($sock); // Close socket return true; } function cache_add ($cache_server, $cache_port="") { // Connect to memcached global $error; $error = "Memcached reported an unknown error"; if ($cache_port == "") { $cache_port = 11211; } // Return socket pointer $sock = @fsockopen($cache_server, $cache_port, $nn, $nn, 3); // open socket file descriptor, 3 seconds of timeout if ($sock == false) { $error = "Error creating socket file descriptor"; return false; } // Disable socket buffering stream_set_write_buffer($sock, 0); $in = "add cmsdAm_127.0.0.1_XX 0 0 9\r\n123456789\r\n"; $r = @fwrite($sock, $in, strlen($in)); // Send command to memcached server if ($r == false) { $error = "Cannot write to socket file descriptor"; return false; } $r = @fgets($sock, 128); // Read response from memcached server (max: 128 bytes) if ($r == false) { $error = "Cannot read to socket file descriptor"; return false; } $r = trim ($r); if ($r == "NOT_STORED") { $error = "Not stored, may be it's already stored on cache"; return "warn"; } if ($r == "STORED") { $error = "Successfully stored on cache"; return "true"; } @fclose($sock); // Close socket return false; } function cache_del ($cache_server, $cache_port="") { // Connect to memcached global $error; $error = "Memcached reported an unknown error"; if ($cache_port == "") { $cache_port = 11211; } // Return socket pointer $sock = @fsockopen($cache_server, $cache_port, $nn, $nn, 3); // open socket file descriptor, 3 seconds of timeout if ($sock == false) { $error = "Error creating socket file descriptor"; return false; } // Disable socket buffering stream_set_write_buffer($sock, 0); $in = "delete cmsdAm_127.0.0.1_XX\r\n"; $r = @fwrite($sock, $in, strlen($in)); // Send command to memcached server if ($r == false) { $error = "Cannot write to socket file descriptor"; return false; } $r = @fgets($sock, 128); // Read response from memcached server (max: 128 bytes) if ($r == false) { $error = "Cannot read to socket file descriptor"; return false; } $r = trim ($r); if ($r == "NOT_FOUND") { $error = "Not found, may be it's already deleted from cache"; return "warn"; } if ($r == "DELETED") { $error = "Successfully deleted from cache"; return "true"; } @fclose($sock); // Close socket return false; } ?>