// напишем функцию, которая бы добавляла

// к строке слово checked

function add_label(&$data_str){

$data_str .= 'checked';

}

$str = '<input type=radio name=article ';

// пусть имеется такая строка

echo $str .'><br>';

// выведет элемент формы –

// не отмеченную радио кнопку

add_label($str);

// вызовем функцию

echo $str .'><br>';

// это выведет уже отмеченную

// радио кнопку

?>

В функции можно определять значения аргументов, используемые по умолчанию. Само значение по умолчанию должно быть константным выражением, а не переменной и не представителем класса или вызовом другой функции.

У нас есть функция, создающая информационное сообщение, подпись к которому меняется в зависимости от значения переданного ей параметра. Если значение параметра не задано, то используется подпись 'Оргкомитет'.

<?php

function Message($sign='Оргкомитет.'){

// здесь параметр sign имеет по умолчанию значение 'Оргкомитет'

echo 'Следующее собрание состоится завтра.<br>';

echo '$sign<br>';

}

Message();

// вызываем функцию без параметра.

// В этом случае подпись – это Оргкомитет

Message('С уважением, Вася');

// В этом случае подпись

// будет 'С уважением, Вася.'

?>

Результатом работы этого скрипта будет:

Следующее собрание состоится завтра.

Оргкомитет.

Следующее собрание состоится завтра.

С уважением, Вася.

Если у функции несколько параметров, то те аргументы, для которых задаются значения по умолчанию, должны быть записаны после всех остальных аргументов в определении функции. В противном случае появится ошибка, если эти аргументы будут опущены при вызове функции.

Например, мы хотим внести описание статьи в каталог. Пользователь должен ввести такие характеристики статьи, как ее название, автор и краткое описание. Если пользователь не вводит имя автора статьи, считаем, что это Иванов Иван.

<?php

function Add_article($title, $description,

$author='Иванов Иван'){

echo 'Заносим в каталог статью: $title,';

echo 'автор $author';

echo '<br>Краткое описание: ';

echo '$description <hr>';

}

Add_article('Информатика и мы',

'Это статья про информатику ...',

'Петров Петр');

Add_article('Кто такие хакеры',

'Это статья про хакеров ...');

?>

В результате работы скрипта получим следующее

Заносим в каталог статью: Информатика и мы,

автор Петров Петр.

Краткое описание:

Это статья про информатику...

Заносим в каталог статью: Кто такие хакеры,

автор Иванов Иван.

Краткое описание:

Это статья про хакеров...

Если же мы напишем вот так:

<?php

function Add_article($author='Иванов Иван',

$title, $description){

// ...действия как в предыдущем примере

}

Add_article('Кто такие хакеры',

'Это статья про хакеров...');

?>

То в результате получим:

Warning: Missing argument 3 for

add_article() in

c:users ina asksfuncdef_bad.php

on line 2

Списки аргументов переменной длины

В PHP4 можно создавать функции с переменным числом аргументов. То есть мы создаем функцию, не

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату