PHP 简易文件查看器
超简易服务器端文件查询器
代码如下:
<?php // 系统入口
date_default_timezone_set("PRC");
error_reporting(E_ALL & ~E_NOTICE);
set_time_limit(30); define('DS', DIRECTORY_SEPARATOR);
define('ROOT_PATH', dirname(__FILE__) . DS); // 登录
if ($_SERVER['PHP_AUTH_USER'] != 'admin' || $_SERVER['PHP_AUTH_PW'] != '123')
{
header('WWW-Authenticate: Basic realm="用户登录"');
header('HTTP/1.0 401 Unauthorized');
die("未登录");
} $cur_path = $_GET['path'] ?: dirname(__FILE__);
$cur_path = realpath($cur_path);
if (is_file($cur_path))
{
header('Content-type: text/plain; charset=utf-8');
echo file_get_contents($cur_path);
exit;
} $pre_path = dirname($cur_path);
$list = glob($cur_path . DS . '*'); header('Content-type: text/html; charset=utf-8');
header('Cache-Control: no-cache, must-revalidate, max-age=0');
header('Pragma: no-cache');
?>
<!DOCTYPE html>
<head>
<title>文件管理</title>
</head>
<body style="font-family: consolas">
<div><?=$cur_path?></div>
<table border="1" cellspacing="0" cellpadding="5">
<tr>
<td></td>
<td><a href='zfile.php?path=<?=urlencode($pre_path) ?>'>..</a></td>
<td></td>
</tr>
<?php foreach ($list as $r) { $t = filetype($r); ?>
<tr>
<td><?=$t?></td>
<td><a target="<?=($t=='file'?'_blank':'')?>" href='zfile.php?path=<?=urlencode($cur_path) ?><?=DS.urlencode(basename($r))?>'><?=basename($r)?></a></td>
<td><?=round(filesize($r)/1024)?>k</td>
</tr>
<?php } ?>
</table>
</body>
PHP 简易文件查看器的更多相关文章
- 02-IOSCore - NSFileHandle、合并文件、文件指针、文件查看器
[day0201_NSFileHandle]:文件句柄 1 NSFileHandle 文件对接器.文件句柄 常用API: - (NSData *)readDataToEndOfFile;读取数据到最后 ...
- Qt Quick综合实例之文件查看器
假设你基于Qt SDK 5.3.1来创建一个Qt Quick App项目,项目模板为你准备的main.qml文档的根元素是ApplicationWindow或Window.这次我们就以Applicat ...
- WPF 模仿 UltraEdit 文件查看器系列一 用户控件
WPF 模仿 UltraEdit 文件查看器系列一 用户控件 运行环境:Win10 x64, NetFrameWork 4.8, 作者:乌龙哈里,日期:2019-05-10 章节: 起步 添加用户控件 ...
- WPF 模仿 UltraEdit 文件查看器系列 开篇和导读
WPF 模仿 UltraEdit 文件查看器系列 开篇和导读 运行环境:Win10 x64, NetFrameWork 4.8, 作者:乌龙哈里,日期:2019-05-10 学 .Net FrameW ...
- 安装XPS文件查看器的方法
方法1https://jingyan.baidu.com/article/ca2d939d6eb0eeeb6c31cecb.html 方法2 Win10需要使用这种方式,因为Windows 10:版本 ...
- Windows蓝屏dump文件查看器(转)
Windbg-分析Windows蓝屏原因利器[转]下载地址先声明下,虽然用windbg诊断蓝屏之前网络上已经有人发过教程了,但就我而言, 学会使用windbg来诊断蓝屏也算是自己的原创吧.以前看一个微 ...
- Eclipse下jad反编译之“类文件查看器”不能处理给定的输入错误解决
Eclipse中的插件下载,安装和配置可以参考我的另一篇文章:MyEclipse反编译Class文件 下面重点讲解如何使用jad反编译 1.在DOS窗口中,到class所在目录,直接运行 >ja ...
- android用异步操作AsyncTask编写文件查看器
Activity程序 package com.example.fileasynctaskproject; import java.io.File; import java.util.ArrayList ...
- C++PE文件格式解析类(轻松制作自己的PE文件解析器)
PE是Portable Executable File Format(可移植的运行体)简写,它是眼下Windows平台上的主流可运行文件格式. PE文件里包括的内容非常多,详细我就不在这解释了,有兴趣 ...
随机推荐
- SPI bus 的收发编程
https://linux-sunxi.org/SPIdev The SPI bus (or Serial Peripheral Interface bus) is a synchronous ser ...
- TPA测试项目管理系统-测试用例管理
Test Project Administrator(简称TPA)是经纬恒润自主研发的一款专业的测试项目管理工具,目前已广泛的应用于国内二十余个整车厂和零部件供应商.它可以管理测试过程 ...
- Linux——CentOS7没有ifconfig命令
前言 今天新安装的centos7,使用ifconfig命令却提示没有,直接安装也没有~ 正文 直接安装直接告诉我这个包不是一个有效的 [root@kafka ~]# yum install -y if ...
- PHP——数组根据某一键值合并
前言 其实要实现很简单直接foreach,再根据PHP中数组的特性就可以轻松实现. 步骤 这是源数据的格式 $info = [ [ "gname" => "特别关心 ...
- hive日期转换函数2
转自大神 http://www.oratea.net/?p=944 无论做什么数据,都离不开日期函数的使用. 这里转载一下Hive的日期函数的使用,写的相当完整. 日期函数UNIX时间戳转日期函数: ...
- 如何使用 淘宝 NPM 镜像
淘宝 NPM 镜像 原文链接 http://npm.taobao.org/ 这是一个完整 npmjs.org 镜像,你可以用此代替官方版本(只读),同步频率目前为 10分钟 一次以保证尽量与官方服务同 ...
- 51nod1423 最大二“货”
[传送门] 单调栈其实就是个后缀$max/min$,这道题可以维护一个单调递减的单调栈,pop元素的时候,能pop掉的元素就是第二大,当前元素为第一大.遇到第一个不能pop掉的时候当前元素就是第二大, ...
- c++实用语法
数组的快捷初始化 int inq[110] memset(inq, 0, sizeof(inq)); string到char数组的转换: string str ("Please split ...
- 纯js房贷计算器开源
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 003-转载-keil-STM32硬件错误HardFault_Handler的处理方法
(一)参考文献:https://blog.csdn.net/electrocrazy/article/details/78173558 在用Keil对STM32的程序进行仿真时程序有时会跑飞,停止仿真 ...