ホームページ > バックエンド開発 > PHPチュートリアル > func_get_args と func_num_args の詳細な説明

func_get_args と func_num_args の詳細な説明

高洛峰
リリース: 2023-03-05 15:40:01
オリジナル
1469 人が閲覧しました

func_get_args() - この配列内の各項目は関数のパラメーターです。 PHPのマニュアルに従い、関数の使用形式を記載します。

array func_get_args ( void )
ログイン後にコピー
ログイン後にコピー

ここで一般的な説明をするだけではこの機能をよく理解できないかもしれないので、例を通してこの機能の使い方を見てみましょう。

function foo() {     
 $args = func_get_args();   
 foreach ($args as $k => $v) {
  echo “arg”.($k+1).”: $v\n”;
  }  
}  
foo();  /* 没用任何输出*/  
foo(‘hello’);  /* 输出  arg1: hello  */ 
foo(‘hello’, ‘world’, ‘again’);  /*输出 arg1: hello  arg2: world  arg3: again  */
ログイン後にコピー
ログイン後にコピー

この関数は、渡したすべてのパラメータを配列に入れて出力できます。これにより、将来的には PHP プログラムを作成するのがはるかに簡単になるでしょうか?
func_get_args 関数について話しているので、func_num_args 関数と func_get_arg 関数についても言及する必要があります

func_nums_args - 渡された関数パラメータの数をカウントします

func_get_arg - インデックス、インデックス番号に基づいて特定のパラメータを取得しますここに渡されます 関数のパラメーターを入力します

PHP マニュアルから例を挙げてみましょう

<?
 
function foo()
{
    $numargs = func_num_args();
    echo “Number of arguments: $numargs\n“;
}
 
foo(1, 2, 3);    // Prints ‘Number of arguments: 3′
?>
ログイン後にコピー
ログイン後にコピー

上記の例は、 func_num_args 関数が関数 live に渡されるパラメーターであることを明確に示しています

    <?php
    function foo()
    {
         $numargs = func_num_args();
         echo "Number of arguments: $numargs<br />\n";
         if ($numargs >= 2) {
         echo "Second argument is: " . func_get_arg(1) . "<br />\n";
         }
    }
     
    foo (1, 2, 3);
    //Prints
    //Number of arguments: 3
    //Second argument is: 2
    ?>
ログイン後にコピー
ログイン後にコピー

上記の例では、 func_get_arg (1) は関数の 2 番目のパラメータを取得することです。それでは、これら 3 つの関数をマスターできるように、これら 3 つの関数の包括的な例を見てみましょう。

<?php
function foo()
{
    $numargs = func_num_args();//得到参数的个数
    echo "Number of arguments: $numargs<br />\n";
    if ($numargs >= 2) {
        echo "Second argument is: " . func_get_arg(1) . "<br />\n";
    }
    $arg_list = func_get_args();
    for ($i = 0; $i < $numargs; $i++) {
        echo "Argument $i is: " . $arg_list[$i] . "<br />\n";
    }
}

foo(1, 2, 3);
/*Number of arguments: 3
Second argument is: 2
Argument 0 is: 1
Argument 1 is: 2
Argument 2 is: 3*/
?>
ログイン後にコピー
ログイン後にコピー

func_get_args() - 配列を返します。この配列内の各項目は関数のパラメーターです。 PHPのマニュアルに従い、関数の使用形式を記載します。

array func_get_args ( void )
ログイン後にコピー
ログイン後にコピー

ここで一般的な説明だけではこの関数をよく理解できないかもしれないので、例を通してこの関数の使い方を見てみましょう。

function foo() {     
 $args = func_get_args();   
 foreach ($args as $k => $v) {
  echo “arg”.($k+1).”: $v\n”;
  }  
}  
foo();  /* 没用任何输出*/  
foo(‘hello’);  /* 输出  arg1: hello  */ 
foo(‘hello’, ‘world’, ‘again’);  /*输出 arg1: hello  arg2: world  arg3: again  */
ログイン後にコピー
ログイン後にコピー

この関数は、渡したすべてのパラメータを配列に入れて出力できます。これにより、将来的には PHP プログラムを作成するのがはるかに簡単になるでしょうか?
func_get_args 関数について話しているので、func_num_args 関数と func_get_arg 関数についても言及する必要があります

func_nums_args - 渡された関数パラメータの数をカウントします

func_get_arg - インデックス、インデックス番号に基づいて特定のパラメータを取得しますここに渡されます 関数のパラメーターを入力します

PHP マニュアルから例を挙げてみましょう

<?
 
function foo()
{
    $numargs = func_num_args();
    echo “Number of arguments: $numargs\n“;
}
 
foo(1, 2, 3);    // Prints ‘Number of arguments: 3′
?>
ログイン後にコピー
ログイン後にコピー

上記の例は、func_num_args 関数が関数 live に渡されるパラメーターであることを明確に示しています

    <?php
    function foo()
    {
         $numargs = func_num_args();
         echo "Number of arguments: $numargs<br />\n";
         if ($numargs >= 2) {
         echo "Second argument is: " . func_get_arg(1) . "<br />\n";
         }
    }
     
    foo (1, 2, 3);
    //Prints
    //Number of arguments: 3
    //Second argument is: 2
    ?>
ログイン後にコピー
ログイン後にコピー

上記の例では、 func_get_arg (1) は関数の 2 番目のパラメータを取得することです。それでは、これら 3 つの関数をマスターできるように、これら 3 つの関数の包括的な例を見てみましょう。

<?php
function foo()
{
    $numargs = func_num_args();//得到参数的个数
    echo "Number of arguments: $numargs<br />\n";
    if ($numargs >= 2) {
        echo "Second argument is: " . func_get_arg(1) . "<br />\n";
    }
    $arg_list = func_get_args();
    for ($i = 0; $i < $numargs; $i++) {
        echo "Argument $i is: " . $arg_list[$i] . "<br />\n";
    }
}

foo(1, 2, 3);
/*Number of arguments: 3
Second argument is: 2
Argument 0 is: 1
Argument 1 is: 2
Argument 2 is: 3*/
?>
ログイン後にコピー
ログイン後にコピー

func_get_args と func_num_args に関する詳細な記事については、PHP 中国語 Web サイトに注目してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート