CodeIgniter - 带或不带参数的函数

时间:2011-04-17 11:29:01

标签: php function codeigniter arguments

我在CodeIgniter中有一个函数,它填充了一个天数列表。我称之为init_days()。我使用ajax调用此函数,并使用jQuery将返回的值输出到div中。 这个函数不带任何参数;我从模型中加载默认值并从那里开始工作。 (此函数从当前日期(今天)开始加载到列表中几天。我从模型中加载当前日/月/年/ ..)。

但是,由于必须操纵此列表(例如,显示下个月)。在这种情况下,我想我必须将参数传递给我的函数。

现在,我真的不希望有一个函数来启动列表(init_days()),然后另一个函数,让我们称之为populate_days(),它接受参数但基本上做同样的事情,只是操纵值。

有没有办法检查我是否将值传递给我的函数?这样我就可以保持我的功能,并添加一个参数检查。或者也许我让它变得比它更难(像往常一样:()并且有一种更简单的方法?非常感谢!

1 个答案:

答案 0 :(得分:2)

如果你有一定数量的参数,你可以给它们默认值

function init_days($start = '', $end = '') {
   if (!empty($start) && !empty($end)) {  
     //got both vars. do something with it here
   }
}

如果您使用的是可变数量的参数,也可以使用func_get_arg()。所以你的方法可以使用或不使用参数

http://php.net/manual/en/function.func-get-arg.php

http://www.php.net/manual/en/function.func-num-args.php