正在生成函数数组


Generating an array of functions?

我有几个PHP文件,其中包含多个函数。让我们称它们为functions1.php、functions2.php、functions3.php:

function function_something( $atts ) {
     extract( something_atts( array(
        'foo' => 'bar',
        'bar' => 'foo,
        ), $atts ) );  
         return 'something'; 
}   

我正在all_functions.php中加载这些文件,如下所示:

require_once('functions1.php');
require_once('functions2.php');
require_once('functions3.php');

我想知道是否可以创建一个包含所有这些函数及其属性的数组?

我想的是:

function my_functions() {
    require_once('functions1.php');
    require_once('functions2.php');
    require_once('functions3.php');
}

然后是一些前臂环,但我不确定它到底应该是什么样子。

我知道这可能看起来很棘手,但我只是想知道我是否能够在没有PHP的Reflection API:)的情况下列出所有WordPress快捷代码

嗯,我认为这是个坏主意,但你总是可以这样做:

for($i = 1; $i < 4; $i++){
    require_once("functions".$i.".php");
}

但是,是的,这不是一个好主意;)

如果可以有一个(或多个)包含所有这些函数的静态类,为什么要创建一个函数数组?您还可以编写一个函数来包含/要求目录中的所有文件。

foreach (scandir(get_include_path() . 'DirectoryName') as $importDirFile) {             
    $pathinfo = pathinfo($importDirFile);
    #only php files
    if ($pathinfo['extension'] == 'php')
        require_once($importDir . $importDirFile);              
}