0

複数の関数で満たされたいくつかの 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');
}

そして、いくつかの foreach ループがありますが、結局のところどのように見えるべきかわかりません。

これはおそらくトリッキーに見えますが、PHP の Reflection API を使用せずにすべての WordPress ショートコードをリストできるかどうかに興味があります :)

4

2 に答える 2

0

これらすべての関数を含む 1 つ (または複数) の静的クラスを作成できるのに、なぜ関数の配列を作成するのでしょうか? ディレクトリ内のすべてのファイルを含める/要求する関数を作成することもできます。

foreach (scandir(get_include_path() . 'DirectoryName') as $importDirFile) {             
    $pathinfo = pathinfo($importDirFile);
    #only php files
    if ($pathinfo['extension'] == 'php')
        require_once($importDir . $importDirFile);              
}
于 2012-03-22T17:35:58.573 に答える
0

うーん、これは悪い考えだと思いますが、いつでも行うことができます:

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

しかし、ええ、素晴らしいアイデアではありません;)

于 2012-03-22T17:23:20.690 に答える