>  기사  >  백엔드 개발  >  func_get_args 및 func_num_args에 대한 자세한 설명

func_get_args 및 func_num_args에 대한 자세한 설명

高洛峰
高洛峰원래의
2017-02-09 09:37:131452검색

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)은 함수의 두 번째 매개변수를 가져오는 것입니다. 자, 이 세 가지 기능을 마스터할 수 있도록 이 세 가지 기능의 포괄적인 예를 살펴보겠습니다.

<?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 함수를 명확하게 보여줍니다. 라이브

    <?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)은 함수의 두 번째 매개변수를 가져오는 것입니다. 자, 이 세 가지 기능을 마스터할 수 있도록 이 세 가지 기능의 포괄적인 예를 살펴보겠습니다.

<?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 중국어 웹사이트를 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.