php 返回目录下的所有文件名/文件夹类
浏览:3267次 出处信息
这里为了便于演示,直接列出来了,其中可以返回数组之类的,根据需要另作改动。
代码如下,可以直接Copy测试。
- <?php
- main();
- function main(){
- //Set Variables
- $testDirName = "./zhoz/";
- $fileListArray = array();
- $dirListArray = array();
- $aDirectory = new DirReader($testDirName);
- // Store File List in Array
- $fileListArray = $aDirectory->getFileList();
- $dirListArray = $aDirectory->getDirList();
- echo "<html><body>\n";
- echo "<pre>\n";
- echo "Reading Directory: ". $aDirectory->getDirPath() ."\n";
- echo "Current Directory: ". getcwd() ."\n";
- echo "-- Files in Directory --\n";
- foreach ($fileListArray as $filename) {
- echo "File: $filename\n";
- }
- echo "\n-- Sub Directories --\n";
- foreach ($dirListArray as $filename){
- echo "Sub dir: $filename\n";
- }
- echo "</pre></body></html>\n";
- }
- class DirReader{
- private $dh;
- private $basedir;
- private $fileNameArray=array();
- private $dirNameArray=array();
- function __construct($dirname){
- $this->basedir = $dirname;
- $this->dh = dir($dirname) or die($php_errormsg);
- $this->parseDirectory();
- }
- function parseDirectory(){
- $filename = "";
- while (false !== ($filename = $this->dh->read())){
- $fullpath = $this->basedir . '/' . $filename;
- if (is_file($fullpath)){
- array_push($this->fileNameArray, $filename);
- }else{
- array_push($this->dirNameArray, $filename);
- }
- }
- }
- // Get all the files in the directory
- function getFileList(){
- return $this->fileNameArray;
- }
- // Get all the sub directories in the directory
- function getDirList(){
- return $this->dirNameArray;
- }
- function getDirPath(){
- return $this->dh->path;
- }
- }
建议继续学习:
- Bash 小技巧:给目录加上书签,快速切换目录 (阅读:6500)
- 查找当前目录的重复文件 (阅读:3007)
- linux文件目录操作总结 (阅读:2664)
- bash遍历目录 (阅读:2707)
- MySql重启命令与数据库安装目录 (阅读:2436)
- apache配置(如何禁止列出目录内容) (阅读:2477)
- FREEBSD 建目录上限 (阅读:2330)
- Linux(CentOS)下更改/转移MySQL数据库目录 (阅读:2192)
- 记一个php函数dirname (阅读:2146)
- 递归创建目录的一个函数 (阅读:2093)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
<< 前一篇:用PHP计算身份证校验码
后一篇:使用bcompiler对PHP文件进行加密 >>
文章信息
- 作者:zhoz <zhozweb@yahoo.com.cn> 来源: Everyday NetLog
- 标签: 目录
- 发布时间:2010-03-24 23:37:49
建议继续学习
近3天十大热文
- [54] IOS安全–浅谈关于IOS加固的几种方法
- [52] android 开发入门
- [52] 如何拿下简短的域名
- [51] 图书馆的世界纪录
- [50] Oracle MTS模式下 进程地址与会话信
- [49] Go Reflect 性能
- [46] 【社会化设计】自我(self)部分――欢迎区
- [46] 读书笔记-壹百度:百度十年千倍的29条法则
- [36] 程序员技术练级攻略
- [29] 视觉调整-设计师 vs. 逻辑