包括类中的所有目录文件

时间:2013-01-30 01:10:31

标签: php class include

我有一个像这样的php文件

class Config {

   public static $__routes = array(

       "Home"                    => "index.php",
       "Support"                 => "support.php",

   );

}

Config::__routes += (include 'config/example1.php');
Config::__routes += (include 'config/example2.php');

我可以包含目录

例如:

include('include 'config/example1.php');
include('include 'config/example2.php');

将是这样的:

include('config/*');

2 个答案:

答案 0 :(得分:2)

您可以使用glob尝试:

foreach (glob('config/*.php') as $file)
    include( $file );

答案 1 :(得分:1)

此代码将包含给定文件夹中的所有.php文件。

<?php

if ($handle = opendir('/path/to/includes/folder')) {
    while (false !== ($entry = readdir($handle))) {
        $path_parts = pathinfo($entry);
    if ($path_parts['extension'] == '.php') include $entry;
    }
    closedir($handle);
}
?>

说明: opendir将打开给定的文件夹并返回文件夹的句柄。 while循环将遍历该文件夹中的所有文件。

pathinfo将创建一个包含文件信息的数组,其中一个文件信息是文件的扩展名。

然后我们将找到的文件的扩展名与.php进行比较,如果是php文件,我们将其包含在内。 然后我们关闭打开的文件夹的句柄。