| 警告 |
PHP 4.1.0以降、call_user_method()関数は古い関数 となっています。代わりにarray(&$obj, "method_name")構文を指定して call_user_func()等を使用して下さい。 |
ユーザ定義のオブジェクトobjから method_nameにより参照されるメソッドをコー ルします。以下に使用例を示します。ここでは、クラスを定義し、オブ ジェクトのインスタンスを作成し、 call_user_method()を用いて、間接的に そのクラスのメソッドprint_infoをコールします。
<?php
class Country {
var $NAME;
var $TLD;
function Country($name, $tld) {
$this->NAME = $name;
$this->TLD = $tld;
}
function print_info($prestr="") {
echo $prestr."Country: ".$this->NAME."\n";
echo $prestr."Top Level Domain: ".$this->TLD."\n";
}
}
$cntry = new Country("Peru","pe");
echo "* Calling the object method directly\n";
$cntry->print_info();
echo "\n* Calling the same method indirectly\n";
call_user_method ("print_info", $cntry, "\t");
?> |
call_user_func_array(), call_user_func(), call_user_method_array() も参照下さい。