php的可变函数,今天大概的了解下,是看php手册总结的,觉得用处不大;
PHP 支持可变函数的概念。这意味着如果一个变量名后有圆括号,PHP 将寻找与变量的值同名的函数,并且尝试执行它。可变函数可以用来实现包括回调函数,函数表在内的一些用途。
可变函数不能用于例如 echo,print,unset(),isset(),empty(),include,require 以及类似的语言结构。需要使用自己的包装函数来将这些结构用作可变函数。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
class Foo { function Variable() { $name = 'Bar' ; $ this ->$name(); // This calls the Bar() method } function Bar() { echo "This is Bar" ; } } $foo = new Foo(); $funcname = "Variable" ; $foo->$funcname(); // This calls $foo->Variable() class Foo { static $variable = 'static property' ; static function Variable() { echo 'Method Variable called' ; } } echo Foo::$variable; // This prints 'static property'. It does need a $variable in this scope. $variable = "Variable" ; Foo::$variable(); // This calls $foo->Variable() reading $variable in this scope. |
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
原文链接:http://chenhaibo0806999.iteye.com/blog/2203354