Frage

Ich bin die Integration von Lehre mit Zend Framework. Ich habe einen Fehler von cli geworfen getroffen. Es scheint Zend_Application_Bootstrap_Bootstrap kein require_once für Zend_Application_Bootstrap_BootstrapAbstract haben. Hat jemand schlagen?

meine cli-config.php

<?php

$classLoader = new \Doctrine\Common\ClassLoader('App', __DIR__ . "/../application/models");
$classLoader->register();

$classLoader = new \Doctrine\Common\ClassLoader('Cms', __DIR__ . "/../application/modules/cms-modules/models");
$classLoader->register();

$classLoader = new \Doctrine\Common\ClassLoader('Proxies', __DIR__ . "/../application/models");
$classLoader->register();


$config = new \Doctrine\ORM\Configuration();
$config->setMetadataCacheImpl(new \Doctrine\Common\Cache\ArrayCache);
$driverImpl = $config->newDefaultAnnotationDriver(array(
        __DIR__."/../application/models/App",
        __DIR__."/../application/modules/cms-modules/models/Cms"
        ));
$config->setMetadataDriverImpl($driverImpl);

$config->setProxyDir(__DIR__ . '/Proxies');
$config->setProxyNamespace('Proxies');


// Database connection information
$connectionOptions = array(
    'driver' => 'pdo_mysql',
    'dbname' => 'bella',
    'user' => 'username',
    'password' => 'password',
    'unix_socket' => '/Applications/MAMP/tmp/mysql/mysql.sock'
);

$em = \Doctrine\ORM\EntityManager::create($connectionOptions, $config);

$helperSet = new \Symfony\Component\Console\Helper\HelperSet( array(
    'db' => new \Doctrine\DBAL\Tools\Console\Helper\ConnectionHelper($em->getConnection()),
    'em' => new \Doctrine\ORM\Tools\Console\Helper\EntityManagerHelper($em)
));
War es hilfreich?

Lösung

Bootstrap-Klasse sollte die Bootstrap Abstrakte Klasse erweitert.

class Bootstrap extends Zend_Application_Module_Bootstrap {
   //.....
}

Andere Tipps

Zend_Application nicht require_once verwenden. Es ist eines der ersten Pakete in ZF 1. *, die die Zend Autoloader benötigt.

Ja, die Lehre Klassenlader mit Zends Autoloader ersetzt hat der Trick. Ich hatte den Pfad zu dem Namensraum direkt an den PHP-Pfad hinzuzufügen, mit set_include_path. Gibt es eine schönere Art und Weise, dies zu tun? Ich sehe Lehre des Klassenlader ermöglicht es Ihnen, sowohl den Pfad und den Namespace angeben. Danke für Ihre Hilfe beberlei und Alex

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top