php – 自动包含/要求所有目录下的所有文件
作者:互联网
我想在所有目录下自动包含/要求所有.php文件.例如:
(目录结构)
-[ classes
--[ loader (directory)
---[ plugin.class.php
--[ main.class.php
--[ database.class.php
我需要一个自动加载以.php结尾的所有文件的函数
我尝试了各种各样的:
$scan = scandir('classes/');
foreach ($scan as $class) {
if (strpos($class, '.class.php') !== false) {
include($scan . $class);
}
}
解决方法:
好吧,如果你想包含所有甚至在子目录中的某些结尾的php文件,你必须做一个递归函数.像这样的东西:
function load_classphp($directory) {
if(is_dir($directory)) {
$scan = scandir($directory);
unset($scan[0], $scan[1]); //unset . and ..
foreach($scan as $file) {
if(is_dir($directory."/".$file)) {
load_classphp($directory."/".$file);
} else {
if(strpos($file, '.class.php') !== false) {
include_once($directory."/".$file);
}
}
}
}
}
load_classphp('./classes');
标签:autoloader,php 来源: https://codeday.me/bug/20190722/1506311.html