Не можете установить значение аргумента по умолчанию для глобальной переменной? - PullRequest
10 голосов
/ 04 августа 2011

Почему я не могу этого сделать?

function ($var1, $var2 = $GLOBALS['var']){
  ...
}

глобальный 'var' - это объект

Ответы [ 2 ]

13 голосов
/ 04 августа 2011

Вы не можете использовать переменные в качестве значений по умолчанию. Вы можете использовать это:

function ($var1, $var2 = null){
  if(is_null($var2))
      $var2=$GLOBALS['var'];
  ...
}
0 голосов
/ 04 августа 2011

Значения параметров по умолчанию для функций должны быть константами.

Вы можете установить его на фиктивное значение, например null, а затем в начале вашей функции заменить значение.

function ($var1, $var2 = $GLOBALS['var']){
  if(is_null($var2))
      $var2=$GLOBALS['var'];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...