1

zf 1.11 で Doctrine 2.2 を構成したいと考えています。すべてが完了しましたが、このエラーの内容がわかりません:

厳格な標準: Sc\Resource\EntityManagerFront::postDispatch() の宣言は、26 行目の D:\xampp\htdocs\sc\library\Sc\Resource\EntityManagerFront.php の Zend_Controller_Plugin_Abstract::postDispatch() の宣言と互換性がある必要があります。

私のコード:

    <?php


namespace Sc\Resource;
use Zend_Controller_Plugin_Abstract, Zend_Controller_Front;

class EntityManagerFront extends Zend_Controller_Plugin_Abstract
{

  /**
   * Flush the EntityManager.
   *
   * (non-PHPdoc)
   * @see Zend_Controller_Plugin_Abstract::dispatchLoopShutdown()
   */

  public function postDispatch($request)
  {

    $bootstrap = Zend_Controller_Front::getInstance()->getParam('bootstrap');
    $em = $bootstrap->getResource('EntityManager');
    $em->flush();

    return $em;
  }
}
4

2 に答える 2

4

postDispatch 関数のシグネチャは

public function postDispatch(Zend_Controller_Request_Abstract $request)

したがって、$requestパラメーターの型を指定する必要があります。Zend_Controller_Request_Abstract

于 2012-01-29T14:42:51.693 に答える
0

最終的な修正ソリューション:

<?php

namespace Sc\Resource;

use Zend_Controller_Plugin_Abstract,
    Zend_Controller_Front,
        Zend_Controller_Request_Http,
        Zend_Controller_Request_Abstract;


class EntityManagerFront extends Zend_Controller_Plugin_Abstract {
    /**
     * Flush the EntityManager.
     *
     * (non-PHPdoc)
     * @see Zend_Controller_Plugin_Abstract::dispatchLoopShutdown()
     */
    public function postDispatch(Zend_Controller_Request_Abstract $request) {

        $bootstrap = Zend_Controller_Front::getInstance()->getParam('bootstrap');
        $em = $bootstrap->getResource('EntityManager');
        $em->flush();

        return $em;
    }
}
于 2012-01-30T09:41:30.557 に答える