Page 47 - 4636
P. 47
functioncreate_table2($data, $border=l, $cellpadding=4, $cellspacing=4)
{
echo "<table border=\"".$border."\" cellpadding=\"".$cellpadding"."\"
cellspacing=\"".$cellspacing.”/”>”;
reset($data);
$value = current($data);
while ($value) {
echo "<tr><td>". $value. "</td></tr>\n";
$value = next($data);
}
echo "</table>";
}
$my_array = array('Рядокодин.', 'Рядокдва.', 'Рядоктри.');
create_table ($my_array);
Перший параметр функції create_table2(),як і раніше, обов'язковий. Наступні три є
необов'язковими, оскільки для них визначені значення за замовчуванням. Висновок, схожий на
показаний на рис. 2.4 виходить у результаті наступного виклику функції create table2():
create_table2($my_array);
Якщо ми хочемо, щоб ці ж дані відображалися в більш просторою формі, дану функцію можна
викликати так:
create_table2($my_array, 3, 8, 8);
Необов'язкові параметри можна передавати не всі, а лише деякі з них. Параметри присвоюються
зліва направо.
Не забувайте, що не можна пропустити який-небудь необов'язковий параметр і після нього задати
параметр. У даному прикладі, якщо ми хочемо задати значення параметра cellspacing, нам
доведеться передати також і параметр padding. Це обмеження часто стає причиною помилок
програмування. Саме тому необов'язкові параметри поміщаються в кінець списку параметрів.
Наступний виклик функції:
create_table2($my_array, 3) ;
цілком припустимо, він призводить до того, що значення змінної $border встановлюється рівним
3, а значень змінних $cellpadding і $cellspacing отримують відповідні значення за
замовчуванням.
Існує можливість оголошувати функції, які приймають змінну кількість параметрів. Визначити,
скільки передано параметрів, а також їх значення, можна за допомогою допоміжних функцій
func_num_args(), func_get_arg() і func_get_args().
Для прикладу розглянемо наступну функцію:
function var_args() {
echo "Кількість параметрів: echo func_num_args ();
echo "<br />";
$args = func get argsO ;
foreach ($args as $arg) {
echo $arg."<br />";
}
}
Ця функція виводить кількість переданих їй параметрів разом з їх значеннями. Функція
func_num_args() повертає кількість переданих аргументів, а функція func get args() - масив,
що містить ці аргументи. Як альтернативу можна отримувати доступ до кожного аргументу за
допомогою функції func get arg(), передаючи їй номер потрібного аргументу. (Нумерація
аргументів починається з нуля.)
Наступний виклик функції:
44