<?php
require_once 'includes/common.inc.php';
$page['css'][] = 'frame';
$page['js'][] = 'frame';
require 'includes/header.inc.php';
if (!isset($_GET['key'])) {
?>
Invalid key
<?php
require 'includes/footer.inc.php';
die;
}
$type = $redis->type($_GET['key']);
$exists = $redis->exists($_GET['key']);
$count_elements_page = isset($config['count_elements_page']) ? $config['count_elements_page'] : false;
$page_num_request = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$page_num_request = $page_num_request === 0 ? 1 : $page_num_request;
?>
<h2><?php echo format_html($_GET['key'])?>
<?php if ($exists) { ?>
<a href="rename.php?s=<?php echo $server['id']?>&d=<?php echo $server['db']?>&key=<?php echo urlencode($_GET['key'])?>"><img src="images/edit.png" width="16" height="16" title="Rename" alt="[R]"></a>
<a href="delete.php?s=<?php echo $server['id']?>&d=<?php echo $server['db']?>&key=<?php echo urlencode($_GET['key'])?>" class="delkey"><img src="images/delete.png" width="16" height="16" title="Delete" alt="[X]"></a>
<a href="export.php?s=<?php echo $server['id']?>&d=<?php echo $server['db']?>&key=<?php echo urlencode($_GET['key'])?>"><img src="images/export.png" width="16" height="16" title="Export" alt="[E]"></a>
<?php } ?>
</h2>
<?php
if (!$exists) {
?>
This key does not exist.
<?php
require 'includes/footer.inc.php';
die;
}
$alt = false;
$ttl = $redis->ttl($_GET['key']);
try {
$encoding = $redis->object('encoding', $_GET['key']);
} catch (Exception $e) {
$encoding = null;
}
switch ($type) {
case 'string':
$value = $redis->get($_GET['key']);
$value = encodeOrDecode('load', $_GET['key'], $value);
$size = strlen($value);
break;
case 'hash':
$values = $redis->hGetAll($_GET['key']);
foreach ($values as $k => $value) {
$values[$k] = encodeOrDecode('load', $_GET['key'], $value);
}
$size = count($values);
ksort($values);
break;
case 'list':
$size = $redis->lLen($_GET['key']);
break;
case 'set':
$values = $redis->sMembers($_GET['key']);
foreach ($values as $k => $value) {
$values[$k] = encodeOrDecode('load', $_GET['key'], $value);
}
$size = count($values);
sort($values);
break;
case 'zset':
$values = $redis->zRange($_GET['key'], 0, -1);
foreach ($values as $k => $value) {
$values[$k] = encodeOrDecode('load', $_GET['key'], $value);
}
$size = count($values);
break;
}
if (isset($values) && ($count_elements_page !== false)) {
$values = array_slice($values, $count_elements_page * ($page_num_request - 1), $count_elements_page,true);
}
?>
<table>
<tr><td><div>Type:</div></td><td><div><?php echo format_html($type)?></div></td></tr>
<tr><td><div><abbr title="Time To Live">TTL</abbr>:</div></td><td><div><?php echo ($ttl == -1) ? 'does not expire' : format_ttl($ttl) ?> <a href="ttl.php?s=<?php echo $server['id']?>&d=<?php echo $server['db']?>&key=<?php echo urlencode($_GET['key'])?>&ttl=<?php echo $ttl?>"><img src="images/edit.png" width="16" height="16" title="Edit TTL" alt="[E]" class="imgbut"></a></div></td></tr>
<?php if (!is_null($encoding)) { ?>
<tr><td><div>Encoding:</div></td><td><div><?php echo format_html($encoding)?></div></td></tr>
<?php } ?>
<tr><td><div>Size:</div></td><td><div><?php echo $size?> <?php echo ($type == 'string') ? 'characters' : 'items'?></div></td></tr>
</table>
<p>
<?php
// Build pagination div.
if (($count_elements_page !== false) && in_array($type, array('hash', 'list', 'set', 'zset')) && ($size > $count_elements_page)) {
$prev = $page_num_request - 1;
$next = $page_num_request + 1;
$lastpage = ceil($size / $count_elements_page);
$lpm1 = $lastpage - 1;
$adjacents = 3;
$pagination = '<div style="width: inherit; word-wrap: break-word;">';
$url = preg_replace('/&page=(\d+)/i', '', $_SERVER['REQUEST_URI']);
if ($page_num_request > 1) $pagination .= "<a href=\"$url&page=$prev\">←</a> "; else
$pagination .= "← ";
if ($lastpage < 7 + ($adjacents * 2)) { //not enough pages to bother breaking it up
for ($counter = 1; $counter <= $lastpage; $counter++) {
if ($counter == $page_num_request) $pagination .= $page_num_request . ' '; else
$pagination .= "<a href=\"$url&page=$counter\">$counter</a> ";
}
} elseif ($lastpage > 5 + ($adjacents * 2)) { //enough pages to hide some
if ($page_num_request < 1 + ($adjacents * 2)) { //close to beginning; only hide later pages
for ($counter = 1; $counter < 4 + ($adjacents * 2); $counter++) {
if ($counter == $page_num_request) $pagination .= $page_num_request . ' '; else
$pagination .= "<a href=\"$url&page=$counter\">$counter</a> ";
}
$pagination .= "... ";
$pagination .= "<a href=\"$url&page=$lpm1\">$lpm1</a> ";
$pagination .= "<a href=\"$url&page=$lastpage\">$lastpage</a> ";
} elseif ($lastpage - ($adjacents * 2) > $page_num_request && $page_num_request > ($adjacents * 2)) { //in middle; hide some front and some back
$pagination .= "<a href=\"$url&page=1\">1</a> ";
$pagination .= "<a href=\"$url&page=2\">2</a> ";
$pagination .= "... ";
for ($counter = $page_num_request - $adjacents; $counter <= $page_num_request + $adjacents; $counter++) {
if ($counter == $page_num_request) $pagination .= $page_num_request . ' '; else
$pagination .= "<a href=\"$url&page=$counter\">$counter</a> ";
}
$pagination .= "... ";
$pagination .= "<a href=\"$url&page=$lpm1\">$lpm1</a> ";
$pagination .= "<a href=\"$url&page=$lastpage\">$lastpage</a> ";
} else { //close to end; only hide early pages
$pagination .= "<a href=\"$url&page=1\">1</a> ";
$pagination .= "<a href=\"$url&page=2\">2</a> ";
$pagination .= "... ";
for ($counter = $lastpage - (2 + ($adjacents * 2)); $counter <= $lastpage; $counter++) {
if ($counter == $page_num_request) $pagination .= $page_num_request . ' '; else
$pagination .= "<a href=\"$url&page=$counter\">$counter</a> ";
}
}
}
if ($page_num_request < $counter - 1) $pagination .= "<a href=\"$url&page=$next\">→</a> "; else
$pagination .= "→ ";
$pagination .= "</div>";
}
if (isset($pagination)) {
echo $pagination;
}
// String
if ($type == 'string') { ?>
<table>
<tr><td><div class=data><?php echo format_html($value)?></div></td><td><div>
<a href="edit.php?s=<?php echo $server['id']?>&d=<?php echo $server['db']?>&type=string&key=<?php echo urlencode($_GET['key'])?>"><img src="images/edit.png" width="16" height="16" title="Edit" alt="[E]"></a>
</div></td><td><div>
<a href="delete.php?s=<?php echo $server['id']?>&d=<?php echo $server['db']?>&type=string&key=<?php echo urlencode($_GET['key'])?>" class="delval"><img src="images/delete.png" width="16" height="16" title="Delete" alt="[X]"></a>
</div></td></tr>
</table>
<?php }
// Hash
else if ($type == 'hash') { ?>
<table>
<tr><th><div>Key</div></th><th><div>Value</div></th><th><div> </div></th><th><div> </div></th></tr>
<?php foreach ($values as $hkey => $value) { ?>
<tr <?php echo $alt ? 'class="alt"' : ''?>><td><div><?php echo format_html($hkey)?></div></td><td><div class=data><?php echo format_html($value)?></div></td><td><div>
<a href="edit.php?s=<?php echo $server['id']?>&d=<?php echo $server['db']?>&type=hash&key=<?php echo urlencode($_GET['key'])?>&hkey=<?php echo urlencode($hkey)?>"><img src="images/edit.png" width="16" height="1
没有合适的资源?快使用搜索试试~ 我知道了~
redis管理工具phpRedisAdmin
共55个文件
php:22个
png:12个
gif:7个
需积分: 10 8 下载量 67 浏览量
2018-09-27
10:28:54
上传
评论
收藏 82KB ZIP 举报
温馨提示
PHPredisadmin主要提供对key值的维护增删改查、对库的导入导出、查看info信息。
资源推荐
资源详情
资源评论
收起资源包目录
redis管理工具phpRedisAdmin.zip (55个子文件)
phpRedisAdmin-master
css
frame.css 492B
common.css 696B
login.css 3KB
index.css 2KB
composer.json 599B
ttl.php 1KB
index.php 7KB
images
folder-open.png 534B
tree-lastnode-collapsed.gif 109B
favicon.png 7KB
edit.png 553B
export.png 640B
tree-node.gif 74B
logout.png 657B
flush.png 512B
info.png 732B
tree-folder-expanded.gif 114B
delete.png 346B
save.png 465B
import.png 692B
add.png 355B
reset.png 323B
tree-vline.gif 44B
tree-lastnode-expanded.gif 105B
tree-folder-collapsed.gif 118B
tree-lastnode.gif 64B
composer.lock 2KB
import.php 2KB
overview.php 3KB
Dockerfile 201B
flush.php 174B
js
jquery.js 93KB
index.js 4KB
frame.js 904B
jquery-cookie.js 3KB
README.markdown 3KB
info.php 1KB
save.php 325B
rename.php 1KB
login.php 1KB
docker-compose.yml 233B
.gitignore 58B
edit.php 6KB
delete.php 2KB
view.php 12KB
includes
login.inc.php 5KB
footer.inc.php 16B
header.inc.php 1KB
config.environment.inc.php 992B
page.inc.php 310B
common.inc.php 3KB
config.sample.inc.php 3KB
functions.inc.php 3KB
export.php 5KB
logout.php 1KB
共 55 条
- 1
资源评论
qingsure
- 粉丝: 2
- 资源: 12
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功