基本参数问题


Basic parameter questions

我刚开始学习PHP,我对参数有一些疑问。考虑DateTime class PHP 日期时间类手册

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

这是我的问题:

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

提前谢谢。

  1. 方括号内的参数是可选的。
  2. 某些可选参数
  3. 只有在指定其他可选参数时才能指定。
  4. 仅当指定第二个可选参数时,才需要逗号。
  1. 括号中的参数是可选的。因此,如果我初始化 DateTime 类并且不提供第二个参数,则它采用默认值 null

  2. 嵌套括号的意思是:如果要初始化 DateTime 类,我要么提供参数 1 或参数 1 和 2,要么根本不提供。我不能选择不提供参数 1,而是提供参数 2 的值。

  3. 如果提供超过 1,逗号只是分隔函数签名中的不同参数。