PHP 函数构建默认变量


PHP function building a default variables?

我正在尝试构建一个具有 2 个默认值的函数,但在某些情况下我只需要提供第一个参数,而其他情况下只需要提供第二个参数。在PHP中是否有一种方法可以做到这一点,或者有没有一种方法可以做我想要的事情,这被认为是标准的?

function ex($a, $b = null, $c = null) {
    ....
}
ex($a, $b, $c) // WORKS FINE
ex($a) // WORKS FINE
ex($a, $b) // WORKS FINE
ex($a, $c) // WANT VAR C TO BE VAR C IN THE FUNCTION AND NOT VAR B

谢谢

ex($a, $c) // WANT VAR C TO BE VAR C IN THE FUNCTION AND NOT VAR B

跳过第二个参数:

ex($a, null, $c);

详细了解官方文档

就这样称呼它:

ex($a, null, $c);

您可以使用关联的数组

请考虑以下代码:

<?php
function tryThis($parms)
{
  $defaults = array(
      'a' => 5,
      'b' => null,
      'c' => 'Wibble' );
   $parms = array_merge($defaults, $parms);
   var_dump($parms);
}
// Use it as follows
tryThis(array('a'=>7, 'c'=>'Hello'));
tryThis(array('b'=>'Hi There'));
?>

它使人能够将参数按任何顺序排列,并允许任何参数的默认值。唯一的缺点是您必须通过关联的数组访问参数。