ホームページ >バックエンド開発 >PHPチュートリアル >プログラミングで関数やメソッドを動的に呼び出すにはどうすればよいですか?

プログラミングで関数やメソッドを動的に呼び出すにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-09 14:05:15504ブラウズ

How Can I Dynamically Call Functions and Methods in Programming?

変数を使用した関数の動的呼び出し

プログラミングでは、変数に格納されている名前に基づいて関数を呼び出すことができると便利なことがよくあります。この手法により、柔軟性とコードの再利用が可能になります。

変数から関数を呼び出す方法

変数から関数を呼び出すには、次のいずれかの方法を使用できます。

1.直接関数呼び出し:

一重引用符または二重引用符を使用して関数名を変数に代入し (例: $functionName = "foo")、その変数を使用して関数を直接呼び出します (例: $functionName( )).

2. call_user_func():

call_user_func() 関数は、最初の引数として変数に格納された関数名を受け取り、後続の引数として必要なパラメーターを受け取ります。

例:

function foo()
{
    // Code
}

function bar()
{
    // Code
}

$functionName = "foo";

// Call the function using direct function call
$functionName();

// Call the function using call_user_func()
call_user_func($functionName);

からのパラメータの受け渡し変数

変数配列に格納されたパラメータを渡すには、配列アンパック演算子 (...) を使用します。

$function_name = 'trim';
$parameters = ['aaabbb', 'b'];
echo $function_name(...$parameters); // aaa

オブジェクトの動的作成とメソッドの動的呼び出し

Toオブジェクトを作成してそのメソッドを呼び出すには、次の構文を使用します:

$class = 'DateTime';
$method = 'format';
echo (new $class)->$method('d-m-Y');

For静的メソッド:

$class = 'DateTime';
$static = 'createFromFormat';
$date = $class::$static('d-m-Y', '17-08-2023');

以上がプログラミングで関数やメソッドを動的に呼び出すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。