2017-05-09 11 views
1

変数の値をそのクラス外にある$varにしたいと考えています(問題がある場合はMagentoプラットフォームです)。上記の例でクラス外の変数値を取得する方法

class CheckDelivery_IndexController extends Mage_Core_Controller_Front_Action 
{ 
    public function indexAction() { 
     $var = '452001'; # $var variable wanted to get value outside it's scope of class 
     // some conditions here.. 
     return $var; 
     exit; 
    } 
} 

echo $var; # wanted to call $var outside the class 

Iは、クラス内の関数内で定義された変数である$varの値を取得したいです。

これはうまくいかないので、どうすればいいですか?

+0

クラス外にアクセスする場合は、グローバル変数を作成してください。 –

+0

'$ var'は' indexAction'の範囲内にあります。 –

+1

は分かりません。なぜあなたは '$ var 'の代わりに' indexAction() '関数を呼び出す必要があります。 –

答えて

0

コメントが言ったように(あなたはすべてのインスタンス間で値を共有する場合)、それがグローバルまたはより良い静的ます ところで

class CheckDelivery_IndexController extends Mage_Core_Controller_Front_Action 
{ 
    public static $var; 

    public function indexAction() { 
     self::$var = '452001'; 
     // ... 
     return self::$var; 
    } 
} 

echo CheckDelivery_IndexController::$var; 

。あなたのexit;が役に立たない場合

+0

こんにちは、試してみました。エコーCheckDelivery_IndexController :: $ var;値はありません。何か案が? –

+0

変数は、 'indexAction()'メソッドの最初の呼び出しの後にその値を取得します。 –

+0

はい、CheckDelivery_IndexController :: $ varの外側にはクラスが値を取得していません。ありがとう。 –

関連する問題