2012-04-19 80 views
3

我刚开始学习PHP,我对参数有一些疑问。 考虑DateTime classPHP DateTime Class Manual基本参数问题

public __construct ([ string $time = "now" [, DateTimeZone $timezone = NULL ]]) 
public DateTime setDate (int $year , int $month , int $day) 

我的问题是:

  1. 为什么在构造函数中的参数在括号时setDate参数不括号?
  2. 为什么支架内有支架?
  3. 为什么在开括号前有逗号,[,

在此先感谢。

回答

1
  1. 括号中的参数是可选的。因此,如果我初始化DateTime类并且不提供第二个参数,它将采用默认值null

  2. 嵌套括号意味着这个:如果我要初始化DateTime类,我提供参数1或参数1和2,或根本没有。我不能选择提供无参数1,但对于参数的值2

  3. 逗号正好方式隔开的函数的签名不同的参数,如果提供超过1 ..

4
  1. 方括号内的参数是可选的。
  2. 某些可选参数只能在指定其他可选参数时指定。
  3. 只有在指定第二个可选参数时才需要逗号。