|
變量函數(shù)不能用于語(yǔ)言結(jié)構(gòu),例如 echo() ,print() ,unset() ,isset() ,empty() ,include() ,require() 以及類似的語(yǔ)句。需要使用自己的包裝函數(shù)來將這些結(jié)構(gòu)用作變量函數(shù)。
Example #1 可變函數(shù)示例
復(fù)制代碼 代碼如下:
<?php
function foo () {
echo "In foo()<br />/n" ;
}
function bar ( $arg = '' ) {
echo "In bar(); argument was ' $arg '.<br />/n" ;
}
// 使用 echo 的包裝函數(shù)
function echoit ( $string )
{
echo $string ;
}
$func = 'foo' ;
$func (); // This calls foo()
$func = 'bar' ;
$func ( 'test' ); // This calls bar()
$func = 'echoit' ;
$func ( 'test' ); // This calls echoit()
?>
還可以利用可變函數(shù)的特性來調(diào)用一個(gè)對(duì)象的方法。
Example #2 可變方法范例
復(fù)制代碼 代碼如下:
<?php
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()
?>
php技術(shù):PHP可變函數(shù)的使用詳解,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。