Ai
1 Star 0 Fork 0

DukeAnn/phpRedisAdmin

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
delete.php 2.04 KB
一键复制 编辑 原始数据 按行查看 历史
jeeinn 提交于 2019-08-19 16:41 +08:00 . Add features: batch delete (#145)
<?php
if (!isset($_POST['post'])) {
die('Javascript needs to be enabled for you to delete keys.');
}
require_once 'includes/common.inc.php';
if (isset($_GET['key'])) {
// String
if (!isset($_GET['type']) || ($_GET['type'] == 'string')) {
// Delete the whole key.
$redis->del($_GET['key']);
}
// Hash
else if (($_GET['type'] == 'hash') && isset($_GET['hkey'])) {
// Delete only the field in the hash.
$redis->hDel($_GET['key'], $_GET['hkey']);
}
// List
else if (($_GET['type'] == 'list') && isset($_GET['index'])) {
// Lists don't have simple delete operations.
// You can only remove something based on a value so we set the value at the index to some random value we hope doesn't occur elsewhere in the list.
$value = str_rand(69);
// This code assumes $value is not present in the list. To make sure of this we would need to check the whole list and place a Watch on it to make sure the list isn't modified in between.
$redis->lSet($_GET['key'], $_GET['index'], $value);
$redis->lRem($_GET['key'], 1, $value);
}
// Set
else if (($_GET['type'] == 'set') && isset($_GET['value'])) {
// Removing members from a set can only be done by supplying the member.
$redis->sRem($_GET['key'], $_GET['value']);
}
// ZSet
else if (($_GET['type'] == 'zset') && isset($_GET['value'])) {
// Removing members from a zset can only be done by supplying the value.
$redis->zRem($_GET['key'], $_GET['value']);
}
die('?view&s='.$server['id'].'&d='.$server['db'].'&key='.urlencode($_GET['key']));
}
if (isset($_GET['tree'])) {
$keys = $redis->keys($_GET['tree'].'*');
foreach ($keys as $key) {
$redis->del($key);
}
die('?view&s='.$server['id'].'&d='.$server['db']);
}
if (isset($_GET['batch_del'])) {
$keys = $_POST['selected_keys'];
$keys = trim($keys, ',');
if (empty($keys)) die('No keys to delete');
$keys = explode(',', $keys);
foreach ($keys as $key) {
$redis->del($key);
}
die('?view&s=' . $server['id'] . '&d=' . $server['db'] . '&key=' . urlencode($keys[0]));
}
?>
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
PHP
1
https://gitee.com/adk/phpRedisAdmin.git
git@gitee.com:adk/phpRedisAdmin.git
adk
phpRedisAdmin
phpRedisAdmin
master

搜索帮助