web-dev-qa-db-ja.com

PHPで関数名として変数を使用

可能性のある複製:
PHP function を定義するために変数を使用します

変数を関数名として使用する方法はありますか?.

たとえば、私は変数を持っています

$varibaleA;

そして、私は関数を作成したいです。

function $variableA() {
}

そのため、この関数は後でスクリプトで呼び出すことができます。これができるかどうか誰か知っていますか?

ありがとう

25
Carl Thomas

eval()またはinclude()を使用して手を汚さない限り、変数でこのような任意の名前の関数を宣言することはできません。

Ithinkあなたがやろうとしていることに基づいて、代わりに 無名関数 をその変数に格納する必要があります( create_function() を使用していない場合PHP 5.3+):

$variableA = function() {
    // Do stuff
};

次のように、通常の方法で呼び出すことができます 変数関数

$variableA();
28
BoltClock
$x = 'file_get_contents';
$html = $x('http://google.com');

機能的には

$html = file_get_contents('http://google.com');

それらは variable functions と呼ばれ、変数変数から離れすぎているため、通常は避ける必要があります。

16
Marc B

あなたはこれを行うことができます:

$foo = function() {
    //..
};

その後:

$foo(); 

PHP 5.3+

3
Kakashi