ホームページ  >  記事  >  バックエンド開発  >  php関数は可変数のパラメータを受け取ります

php関数は可変数のパラメータを受け取ります

不言
不言オリジナル
2018-04-16 14:18:541328ブラウズ

この記事では主に PHP 関数での変数のパラメータの使用方法を紹介します。これには特定の参照値がありますので、必要な方は参考にしてください。


PHP はユーザー定義関数をサポートしています。パラメータリストの。

php5.5以前のバージョンでは、func_num_args()、func_get_arg()、func_get_args()関数を使用して実装されています。

<?php

function myfunc(){

    // 获取参数数量
    echo func_num_args().PHP_EOL;

    // 获取第一个参数的值:
    print_r(func_get_arg(0));
    echo PHP_EOL;

    // 获取所有参数的值
    print_r(func_get_args());
    echo PHP_EOL;

}

myfunc(&#39;a&#39;);
myfunc(1, 2, 3);
myfunc(array(&#39;d&#39;,&#39;e&#39;), array(&#39;f&#39;));

?>


出力:

1
a
Array
(
    [0] => a
)

3
1
Array
(
    [0] => 1
    [1] => 2
    [2] => 3
)

2
Array
(
    [0] => d
    [1] => e
)

Array
(
    [0] => Array
        (
            [0] => d
            [1] => e
        )

    [1] => Array
        (
            [0] => f
        )

)



php5.6以降では、構文を使用できます。 ReRrreerReee




例 1: 数量パラメータの代わりに ... $ args を使用します

出力結果は、FUNC_NUM_ARGS ()、Func_get_arg ()、Func_get_args () 関数と一致します。

<br/>

例2: 配列をパラメータリストに変換する

<?php

function myfunc(...$args){

    // 获取参数数量
    echo count($args).PHP_EOL;

    // 获取第一个参数的值:
    print_r($args[0]);
    echo PHP_EOL;

    // 获取所有参数的值
    print_r($args);
    echo PHP_EOL;

}

myfunc(&#39;a&#39;);
myfunc(1, 2, 3);
myfunc(array(&#39;d&#39;,&#39;e&#39;), array(&#39;f&#39;));

?>
<?php

function add($a, $b){
    echo $a + $b;
}

$args = array(1, 2);

add(...$args); // 输出3

?>



例3: いくつかのパラメータが指定されており、他のパラメータの数は変数です

出力:関連推奨事項:

PHP 関数での通常の値の受け渡しと参照値の受け渡しの違いは何ですか

PHP 関数で静的変数を使用する方法

以上がphp関数は可変数のパラメータを受け取りますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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