私は、PHPクラスの次の静的機能を持っている:
static function __callStatic($method,$args){
$called=NULL;
if(empty(static::$collection)) static::slurp();
if(method_exists(static::$objtype,$method)){
foreach(static::$collection as $obj){
$called[]= call_user_func_array(array($obj, $method), $args);
}
} else if (property_exists(static::$objtype,$method)){ //$method isn't a method, it's a property
foreach(static::$collection as $obj){
$called[]= $obj->$method;
}
} else if($method=='collection'){
$called=static::$collection;
} else {
throw new ZException("$method does not exist");
}
return $called;
}
静的変数すべて定義されているが、おそらく設定されていません。コードは、私が望むことをするように見え、どんなレベルのエラーもスローしません。しかし、Eclipse(Helios)PDTの私の新しいインストールでは、すべてのインスタンスにstatic::$var
が「予期しない静的」エラーとしてマークされています。 static::$var
をself::$var
に置き換えると、Eclipseエラーが消えてしまいますが、コードが機能しません。
Eclipseにこれらがエラーではないと納得させるにはどうすればよいですか?
のEclipseは、PHP開発者の バージョンのために:ヘリオスサービスリリース1 ビルドID:20100917から0705 64のビットのCentOS
php 5.3を使用するように設定されていますか?ウィンドウ>環境設定> PHP>実行可能ファイルとインタプリタをチェックします。 – Gordon
Eclipseは、PHP Intepreterのバージョンを5.1/5.2に設定します。デフォルトではIIRCです。 – netcoder
@Gordon:私は持っていると思ったが、それは立ち往生していないようだ。今働いている。迅速な修正をありがとう! – dnagirl