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

PHP函数常用用法小结

WBOY
풀어 주다: 2016-06-06 20:32:39
원래의
1041명이 탐색했습니다.

由于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);

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿