PHP:将内部日期()函数作为函数参数传递?

时间:2014-01-13 14:03:42

标签: php function date param

我想知道这是否有可能......

function get_event_list( $year = date('Y') ) {

    }

所以我可以像get_event_list(2012)一样调用这个函数,但是当不添加一个para时,它总是从当前年份(2014)中检索所有事件;

亲切的问候, 马特

4 个答案:

答案 0 :(得分:4)

实现目标的最佳方法是:

function get_event_list( $year = null ) {
    if ( is_null($year) ) {
        $year = date('Y');
    }
}

答案 1 :(得分:3)

您不能使用内置函数作为默认参数。

来自PHP manual

  

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

您需要的是:

function get_event_list($year = null) {
    if(!isset($year)) {
        $year = date('Y');
    }
}

答案 2 :(得分:2)

您可以将参数设为可为空:

function get_event_list( $year = NULL ){
  $year = is_null( $year) ? date('Y') : $year;
  //Code here
}

调用此函数的方法是get_event_list(2012)get_event_list()

答案 3 :(得分:0)

你可以这样做

function get_even_list($year = ""){
    if(empty($year)){
        $year = date('Y');
    }

    // Whatever you wann do here
}

史蒂夫

相关问题