2012-04-19 2 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. Запятая обязательно, если вы укажете второй необязательный параметр.
Смежные вопросы