2012-04-18 7 views
3

Zend_RegistryがphpMemory、セッション、または別の方法を使用するかどうかは疑問です。Zend Registryの動作方法

この質問は私の好奇心です。

Zend_Registry::set('test', array()); 
+1

あなたは[コード](http://framework.zend.com/svn/framework/standard/trunk/library/Zend/Registry.php)を読むことができたとあなた自身のためにそれを働かせてください:) – vascowhite

+2

また、[マニュアルを読む](http://framework.zend.com/manual/en/zend.registry.html)もあります:) – Liyali

+0

これは正当で重要な質問です特にZendを使い始めたばかりですドキュメントでも、レジストリがArrayObjectの軽いラッパーにすぎないことはすぐには分かりません。 –

答えて

6

Zend_Registryは、配列を格納する型変数であるstaticのラッパーです。その寿命 プログラムの全体の実行を横切って延び -

コンピュータプログラミングにおいてウィキペディア

からstatic変数defination、静的変数は 静的に割り当てられた変数です。

同様に、Zend_Registry内に格納される変数は、プログラムの実行全体にわたって広がります。

シンプルなマイレジストリクラス

class My_Registry 
    { 
    static $storage; 

    public static function set($key,$value) 
    { 
    self::$storage[$key] = $value; 
    } 


public static function get($key) 
    { 
    return self::$storage[$key]; 
    } 
    } 
1

Zend_Registryはかなり単にアレイ(それはArrayObjectから継承)です。永続ストレージを提供しないため、セッションやファイルを使用する必要はありません。

関連する問題