首頁 >php教程 >php手册 >PHP函数常用用法小结

PHP函数常用用法小结

WBOY
WBOY原創
2016-06-06 20:32:391037瀏覽

由于PHP是一种解释型语言,所以函数编写和调用很是方便。总结一下魔术函数、嵌套函数、匿名函数、函数调用方式和函数参数使用等。

下面是一个简单的例子

function __autoload($class_name)

{

require_once $class_name . '.class.php';

}

另外附赠几个常量和函数:

$func=create_function('$a,$b', '

if ($a == $b)

{

return 0;

}

return ($a

');

$func=function($a,$b)

{

if ($a == $b)

{

return 0;

}

return ($a

}

function foo($arg1)

{

$var=3;

$inner=function($innerArg) use($arg1,$var)

{

return $innerArg+$arg1/$var;

};

echo $inner(5);

}

嵌套函数可以在父函数体里面定义函数,如:

function outer()

{

$out_var=1;

function inner()

{

echo "call inner\n";

}

//echo "call outer\n";

}

outer();

$debug=false;

if($debug===true)

{

function foo()

{

echo "foo";

}

}

foo();

函数名可以是变量名。

function foo()

{

echo "call foo";

}

$func='foo';

$func();

调用类的方法则传入一个数组作为参数,此数组第一个元素是实例或类名,第二个元素是方法名:

class myclass

{

public $age=21;

function echo_age()

{

echo $this->age;

}

static function s_echo_age()

{

echo 22;

}

function i_echo_age()

{

echo 23;

}

}

$c=new myclass;

$classname = "myclass";

call_user_func(array($c, 'echo_age'));

echo "\n";

call_user_func(array($classname, 'i_echo_age'));

echo "\n";

call_user_func(array($classname, 's_echo_age'));

echo "\n";

call_user_func(array($c, 's_echo_age'));

通过此方式可以实现非常灵活的重载,但容易使逻辑变得负责,适度使用。

function call_it($func)

{

$args=func_get_args();

call_user_func_array($func,$args);

}

function add($a,$b)

{

echo $a+$b;

}

function sqr($a)

{

echo $a*$a;

}

call_it('add',1,2);

echo "\n";

call_it('sqr',2);

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn