【问题标题】:Zend Framework - Your resource pluginZend Framework - 你的资源插件
【发布时间】:2011-01-18 11:19:34
【问题描述】:

创建了与 Realplexor 类一起使用的资源插件,使用它在多个客户端之间交换消息,非常适合聊天。为这个插件设置了application.ini。用于测试的控制器编写以下代码:

$realplexorObject = Zend_Registry::get('realplexor'); print_r ($realplexorObject); 死 ();

他给出了以下内容:

Dklab_Realplexor 对象 ( [_timeout:Dklab_Realplexor:private] => 5 [_host:Dklab_Realplexor:private] => rpl.newchat.com [_port:Dklab_Realplexor:private] => 10010 [_identifier:Dklab_Realplexor:private] => 标识符 [_login:Dklab_Realplexor:private] => [_password:Dklab_Realplexor:private] => [_namespace] => 聊天_ )

即 Dklab_Realplexor 对象已创建并存储在 Zend_Registry 中,但这对他有用

我试着写一个这样的模型:

类 Application_Model_Realplexor_Message 扩展 Dklab_Realplexor { 公共函数 __construct() { 返回 Zend_Registry::get('realplexor'); } 公共函数 post ($text, $fromUser = 0, $fromOperator = 0) { $this->send("Alpha", $text); } }

但是,如果你在控制器中创建了这个模型的对象,这就是它没有被初始化的原因:

$realplexorMessageModel = new Application_Model_Realplexor_Message(); print_R ($realplexorMessageModel); 死 ();

问题:

Application_Model_Realplexor_Message 对象 ( [_timeout:Dklab_Realplexor:private] => 5 [_host:Dklab_Realplexor:private] => [_port:Dklab_Realplexor:private] => [_identifier:Dklab_Realplexor:private] => [_login:Dklab_Realplexor:private] => [_password:Dklab_Realplexor:private] => )

我想为他制作这个插件资源和模型,其原理与为数据库现有 ZF 插件资源制作模型的原理相同。

【问题讨论】:

    标签: php zend-framework plugins port


    【解决方案1】:

    也许你可以试试这个:

    class Application_Model_Realplexor_Message
    {
        protected $realplexor;
    
        public function  __construct() {
            $this->realplexor = Zend_Registry::get('realplexor');
        }
    
        public function post ($text, $fromUser = 0, $fromOperator = 0) {
            $this->realplexor->send("Alpha", $text);
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多