-1

codeigniter には integration と呼ばれるライブラリがあり、その最上位の宣言には、配列をそのまま保持する public static 変数があります。

public static $socialLogin = array(
    'twitter',
    'facebook',
    'google',
    'yahoo'
);

私はコントローラでこれにアクセスしよ$this->load->library('integration');うとしています.Then I try and access it in a following code snippet:

        foreach ($this->integration->socialLogin as $provider):
            if (!empty($_SESSION['jigowatt'][$provider])) {
                $this->_social_login($provider);
                break;
            }
        endforeach;

と を受け取りUndefined property: Integration::$socialLoginますInvalid argument supplied for foreach()。コントローラ内のライブラリから public static 変数にアクセスするにはどうすればよいですか?

4

1 に答える 1

1

静的プロパティには、 Scope Resolution Operator (別名、二重コロン)を使用してアクセスする必要があります。これには、CI オブジェクトのインスタンスではなく、クラス名を直接使用します。

$providers = Integration::$socialLogin;
foreach ($providers as $provider) {
    ... 
}
于 2013-09-07T21:43:44.597 に答える