Руководство по РНР 3.0

d531cab5

Значения по умолчанию



Значения по умолчанию

Функции могут определять значения по умолчанию для скалярных аргументов в стиле C++ как показано : function makecoffee ($type = "cappucino") { echo "Making a cup of $type.\n"; } echo makecoffee (); echo makecoffee ("espresso");

Этот пример выведет следующее :Making a cup of cappucino. Making a cup of espresso.

Значение по умолчанию должно быть константой, а не переменной или, к примеру, членом класса.

Учтите, что когда вы объявляете аргументы по умолчанию, они должны быть справа от всех "неумолчальных" аргументов, в противном случае это не будет работать, как задумано. К примеру : function makeyogurt ($type = "acidophilus", $flavour) { return "Making a bowl of $type $flavour.\n"; }echo makeyogurt ("raspberry"); // не будет работать, как ожидалось

Этот пример выведет следующее :Warning: Missing argument 2 in call to makeyogurt() in /usr/local/etc/httpd/htdocs/php3test/functest.htm on line 41 Making a bowl of raspberry .

А теперь сравните с этим :function makeyogurt ($flavour, $type = "acidophilus") { return "Making a bowl of $type $flavour.\n"; }echo makeyogurt ("raspberry"); // а вот это работает

И выводит следующее :Making a bowl of acidophilus raspberry.

Содержание раздела