我想将当前年份作为函数的默认值之一传递
我正在使用
date("Y")
当年
当我以这种方式编写函数时,它工作正常:
function MYfUNCTION($month,$year = 2013)
{
}
但我想通过当年而不是2013年 但是当我这样写时,它给了我一个错误
function MYfUNCTION($month,$year = date("Y"))
{
}
请帮帮我
答案 0 :(得分:17)
您不能将函数用作默认参数值:
默认值必须是常量表达式,而不是(例如)变量,类成员或函数调用。
您应该将默认值设置为函数:
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 :(得分:4)
你可以试试这个,
function MYfUNCTION($month,$year ="")
{
if(empty($year)){
$year = date($year); //Output: current year
}
echo "Year: " . $year ." Month: " . $month;
}
答案 2 :(得分:1)
没有直接的方法直接以预定义的格式传递参数,你必须传递函数来放置你想要的年份,你可以再做一个函数来改变年份。喜欢在php get curr year func。 !希望这可以提供帮助。