php可變長參數處理函數詳解

來源:互聯網
上載者:User
本文執行個體講述了php可變長參數處理函數。分享給大家供大家參考,具體如下:

與C++一樣,PHP中也可以對含有可變參數的函數進行處理,道理都一樣,需要函數來專門處理參數列表。PHP中提供了三個相關的函數:

1. func_num_args() -- 返回傳遞給函數的參數個數

int func_num_args ( void )

樣本:

function open_database($DB, $cache_size_or_values=null, $cache_size=null){  switch (function_num_args())  {    case 1:      $r = select_db($DB);      break;    case 2:      $r = select_db($DB, $cache_size_or_values);      break;    case 3:      $r = select_db($DB, $cache_size_or_values, $cache_size);      break;  }  return is_resource($r);}

2. func_get_arg() -- 返回指定的參數

mixed func_get_arg ( int arg_num)

參數列表中的第一個參數的 arg_num 是0

<?php  function some_func($a, $b)  {    for($i = 0; $i<func_num_args(); ++$i)    {      $param = func_get_arg($i);      echo "the param is $param\n"    }  }  some_func(1,3,5,7,9);?>

3. func_get_args() -- 以數組的形式返回參數列表

array func_get_args ( void )

樣本:

<?php  function some_other_func($a, $b)  {    $param = func_get_args();    $param = join(", ", $param);  // 分解顯示    echo "the arglist is: $param\n";  }  some_other_func(1,3,5,7,9);?>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.