php5的函数特性详解
一个函数可由以下的语法来定义:
<?php
function
foo
(
$arg_1
,
$arg_2
, ...,
$arg_n
)
{
echo
"Example function.\n"
;
return
$retval
;
}
?>
上面的函数与其它语言的函数没有区别,这里主要介绍php5函数的特殊性;
有条件的函数,只有当表达式为真时,函数才有效;
if (
$makefoo
) {
function
foo
()
{
echo
"I don't exist until program execution reaches me.\n"
;
}
}
函数中的函数,只有先执行完foo()后,bar函数才有效;
function
foo
()
{
function
bar
()
{
echo
"I don't exist until foo() is called.\n"
;
}
}
PHP 中的所有函数和类都具有全局域,可以在内部定义外部调用,反之亦然。
PHP 不支持函数重载,也不可能取消定义或者重定义已声明的函数。
注: 函数名是非大小写敏感的,不过在调用函数的时候,通常使用其在定义时相同的形式。
可变参数,可变长度的参数列表和涉及到的相关函数 func_num_args(), func_get_arg(),以及 func_get_args() 以获取更多的信息。
<?php
function foo($w)
{
$numargs = func_num_args();
echo "Number of arguments: $numargs<br />\n";
if ($numargs >= 2) {
echo "Second argument is: " . func_get_arg(1) . "<br />\n";
}
$arg_list = func_get_args();
foreach($arg_list as $var){
echo "Argument $i is: ",$var,"<br />";
}
echo $w;
}
foo(1, 2, 3);
?>
欢迎转载,请注明出处:亲亲宝宝