<?php
/*** User: yuzhao* CreateTime: 2018/10/30 上午11:58* Description:*/class FileTool {/*** User: yuzhao* CreateTime: 2018/10/30 下午12:22* @var* Description: 文件夹相对路径*/private $path;/*** FileTool constructor.*/public function __construct($path=''){$this->path = $path;}/*** User: yuzhao* CreateTime: 2018/10/30 下午12:21* @param $path* Description: 返回当前对象*/public static function instance($path='') {return new FileTool($path);}/*** User: yuzhao* CreateTime: 2018/10/30 下午12:18* @param $dir* Description: 加载目录下的所有文件*/public function includeAll($dir){foreach ($dir as $key => $value) {$value = $this->path.$value;//打开文件夹$handler = opendir($value);//遍历脚本文件夹下的所有文件while( (($filename = readdir($handler)) !== false) ){//如果文件为php脚本文件if( substr($filename,-4) === '.php' ){if ($filename == 'FileTool.php') {continue;}//将文件包含进来require_once( $value.'/'.$filename );print_r($value.'/'.$filename."\n");}}//关闭文件夹closedir($handler);}}
}
使用样例
// 将自动导出数据api文件加载进来
FileTool::instance('需要从哪里开始加载')->includeAll(array('/子目录1','/子目录2
));