路径问题,无法打开文件夹~
//index.php 代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! --> <title>WEB在线文件管理器</title> <!-- Bootstrap --> <link href="css/bootstrap.min.css" rel="stylesheet"> <!-- HTML5 shim 和 Respond.js 是为了让 IE8 支持 HTML5 元素和媒体查询(media queries)功能 --> <!-- 警告:通过 file:// 协议(就是直接将 html 页面拖拽到浏览器中)访问页面时 Respond.js 不起作用 --> <!--[if lt IE 9]> <script src="https://cdn.jsdelivr.net/npm/html5shiv@3.7.3/dist/html5shiv.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/respond.js@1.4.2/dest/respond.min.js"></script> <![endif]--> </head> <body> <?php //读取管理项目、并且展示 require_once 'lib/dir.func.php'; date_default_timezone_set("PRC"); error_reporting(E_ALL&~E_NOTICE); define('WEBROOT', '../phpMyAdmin'); $path=$_REQUEST['path']?$_REQUEST:WEBROOT; //var_dump($path); // exit; $info=read_directory($path); // print_r($info); if (!is_array($info)) { exit('读取失败'); } ?> <div class="container"> <div class="row clearfix"> <div class="col-md-12 column"> <nav class="navbar navbar-default" role="navigation"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> <span class="sr-only">切换导航</span><span class="icon-bar"></span><span class="icon-bar"></span><span class="icon-bar"></span></button> <a class="navbar-brand" href="index.php"><span class="glyphicon glyphicon-home"></span>首页</a> </div> <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> <ul class="nav navbar-nav"> <li class="active"> <a href="#"><span class="glyphicon glyphicon-folder-open"></span> 新建目录</a> </li> <li> <a href="#"><span class="glyphicon glyphicon-file"></span>新建文件</a> </li> <li> <a href="#"><span class="glyphicon glyphicon-upload"></span>上传文件</a> </li> <li> <a href="#"><span class="glyphicon glyphicon-info-sign"></span>系统信息</a> </li> </ul> </li> </ul> <form class="navbar-form navbar-left" role="search"> <div class="form-group"> <input type="text" class="form-control" /> </div> <button type="submit" class="btn btn-default">搜索</button> </form> <ul class="nav navbar-nav navbar-right"> </ul> </li> </ul> </div> </nav> <div class="jumbotron nofollow"> <h1> WEB在线文件管理器 </h1> <p> WEB在线文件管理器主要是用于管理项目文件,实现修改、增加、删除等操作。 </p> <p> <a rel="nofollow" class="btn btn-primary btn-large" href="#">查看更多 »</a> </p> </div> <table class="table table-bordered table-hover table-condensed"> <thead> <tr> <th> 类型 </th> <th> 名称 </th> <th> 读、写、执行 </th> <th> 访问时间 </th> <th> 操作 </th> </tr> </thead> <tbody> <!-- 目录部分 --> <?php if (is_array($info['dir'])) { foreach ($info['dir'] as $val) { ?> <tr class="success"> <td><span class="glyphicon glyphicon-folder-open"></span> 目录</td> <td><?php echo $val['showName']; ?></td> <td> <span class="glyphicon <?php echo $val[readable]?'glyphicon-ok':'glyphicon-remove'; ?>"></span> <span class="glyphicon <?php echo $val[writable]?'glyphicon-ok':'glyphicon-remove'; ?>"></span> <span class="glyphicon <?php echo $val[executable]?'glyphicon-ok':'glyphicon-remove'; ?>"></span> </td> <td><?php echo $val['atime']; ?></td> <td> <a href="index.php?path=<?php echo $val['fileName']; ?>" class="btn btn-primary btn-sm">打开</a> <a href="#" class="btn btn-primary btn-sm">重命名</a> <a href="#" class="btn btn-primary btn-sm">剪切</a> <a href="#" class="btn btn-primary btn-sm">复制</a> <a href="#" class="btn btn-danger btn-sm">删除</a> </td> </tr> <?php } } ?> <!-- 文件部分 --> <?php if (is_array($info['file'])) { foreach ($info['file'] as $val) { ?> <tr class="warning"> <td><span class="glyphicon glyphicon-file"></span>文件</td> <td><?php echo $val['showName']; ?></td> <td> <span class="glyphicon <?php echo $val[readable]?'glyphicon-ok':'glyphicon-remove'; ?>"></span> <span class="glyphicon <?php echo $val[writable]?'glyphicon-ok':'glyphicon-remove'; ?>"></span> <span class="glyphicon <?php echo $val[executable]?'glyphicon-ok':'glyphicon-remove'; ?>"></span> </td> <td><?php echo $val['atime']; ?></td> <td> <a href="#" class="btn btn-primary btn-sm">查看</a> <a href="#" class="btn btn-primary btn-sm">下载</a> <a href="#" class="btn btn-primary btn-sm">编辑</a> <a href="#" class="btn btn-primary btn-sm">剪切</a> <a href="#" class="btn btn-primary btn-sm">复制</a> <a href="#" class="btn btn-danger btn-sm">删除</a> </td> </tr> <?php } } ?> </tbody> </table> </div> </div> </div> <!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery,所以必须放在前边) --> <script src="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js"></script> <!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 --> <script src="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/js/bootstrap.min.js"></script> </body> </html> //dir.func.php代码 <?php /** * 读取目录下的信息返回 * @param [type] $path [description] * @return [type] [description] */ function read_directory($path){ if (!is_dir($path)) { return false; } $info = []; $handle = opendir($path); while (($item = readdir($handle))!== false ) { if ($item != '.' && $item != '..') { $filePath = $path.DIRECTORY_SEPARATOR.$item; $info['fileName'] = $filePath; $info['showName'] = $item; //is_readable()检测文件是否可读 $info['readable'] = is_readable($filePath)?true:false; //is_writable()检测文件是否可写入 $info['writable'] = is_writable($filePath)?true:false; //is_writable()检测文件是否可写执行 $info['executable'] = is_executable($filePath)?true:false; //fileatime() 指定文件的上次访问时间 $info['atime'] = date('Y/m/d H:i:s',fileatime($filePath)); if (is_file($filePath)) { $arr['file'][] = $info; } if (is_dir($filePath)) { $arr['dir'][] = $info; } } } closedir($handle); return $arr; }
路径怎么弄才是正确的?
3
收起
正在回答 回答被采纳积分+1
2回答
PHP常用技术与ThinkPHP5框架开发
- 参与学习 人
- 提交作业 225 份
- 解答问题 3372 个
掌握用PHP开发互联网网站的必备功能,掌握当下主流的Linux系统开发,并熟练使用热门框架ThinkPhp开发电商团购项目,是通向PHP工程师必经之路。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星