2009-11-17 18 views
10

私はいくつかの方法を使用してヘルパファイルを関数で自動ロードしています。私が今抱えている唯一の問題は、そのクラスの変数を呼び出す方法です。静的メソッド内でクラスのメンバー変数を呼び出すにはどうすればよいですか?

オブジェクトとしてインスタンス化していないため、$thisは機能しません。しかし、どうなるでしょうか?

class some_helperclass { 

var $some_variable = '007'; 

public static function some_func() 
    { 
    //return 'all ok'; 
    if (self::some_variable !== FALSE) 
    { 
     return self::ip_adres; 
    } 
} 

私はspl_autoload_register()の助けを借りて、どこでも、今から機能を呼び出すことができます。

some_helperclass:: some_func(); 

答えて

25

self::$some_variableを使用する必要があります。そこに$を入れてください。

http://www.php.net/manual/en/language.oop5.static.php

メンバ変数も静的に宣言する必要があります。

+0

ありがとう、それは私が見落としていたものだった。 – Richard

+0

ありがとう、私はドル記号を含める必要があると思ったことはありませんでした。 PHPは面白い言語です:/ – ChristoKiwi

5

変数も静的変数として宣言してください。

private static $some_variable; 
+0

いいえ、それはうまくいきませんでした。私は空白のページ – Richard

関連する問題