如何将当前年份作为php函数中的默认参数传递

问题描述 投票:4回答:3

我想将当前Year作为函数的默认值之一传递

我在用

date("Y")

今年

所以当我以这种方式编写函数时它工作正常:

function MYfUNCTION($month,$year = 2013)
{
}

但我想通过今年而不是2013年,但是当我这样写时,它给了我一个错误

function MYfUNCTION($month,$year = date("Y"))
{
}

请帮我

php date datetime
3个回答
17
投票

您不能将函数用于默认参数值:

默认值必须是常量表达式,而不是(例如)变量,类成员或函数调用。

(Qazxswpoi)

您应该将默认值设置为函数:

extract from PHP doc

4
投票

你可以试试这个,

function myFunction($month, $year = null) 
{    
  if(!isset($year)) {
    $year = date('Y');
  }
  echo $year.', '.$month;
}

myFunction('June', '2006'); // 2006, June
myFunction(3, 2010);        // 2010, 3
myFunction('July');         // 2013, July

1
投票

没有直接的方法直接以预定义的格式传递参数,你必须传递函数来放置你想要的年份,你可以再做一个函数来改变年份。喜欢在php get curr year func。 !希望这可以提供帮助。

© www.soinside.com 2019 - 2024. All rights reserved.