0

抽象関数を emaillogger クラスで機能させるにはどうすればよいですか?

class EmailLogger extends Zend_Log_Writer_Abstract

関数 _write を使用したい

 protected function _write($event)
 {
      $this->_events[] = $this->_formatter->format($event);
 }

その後、このエラーが発生しました

クラス EmailLogger には 1 つの抽象メソッドが含まれているため、抽象として宣言するか、残りのメソッドを実装する必要があります (Zend_Log_FactoryInterface::factory)

Zend_Log_FactoryInterface を実装しようとしましたが、うまくいきませんでした。

ありがとう、リチャード

4

1 に答える 1

1

Zend_Log_Writer_AbstractZend_Log_FactoryInterface次のコードを持つ実装:

static public function factory($config);

Zend_Log_Writer_Abstractこれにより、およびすべての子クラスにもfactoryメソッドが強制されます。この要件を満たすために、親メソッドを呼び出すラッパー メソッドを配置できます。

class EmailLogger extends Zend_Log_Writer_Abstract
{
    // Add this method in conjunction to what you already have in your class
    public static function factory($config)
    {
        parent::factory($config);
    }
}
于 2012-04-12T05:17:06.303 に答える