Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou tentando configurar o Zend_Translate... vamos ao que encontrei...
Meu Boostrap está configurado da seguinte maneira.
<?php
set_include_path ( '.' . PATH_SEPARATOR . './'
. PATH_SEPARATOR . '../library'
. PATH_SEPARATOR . '..//application/default/models'
. PATH_SEPARATOR . get_include_path () );
require_once 'Zend/Loader.php';
class Bootstrap {
public static $frontController = null;
public static $root = '';
public static $registry = null;
public static function run() {
self::prepare ();
$response = self::$frontController->dispatch ();
self::sendResponse ( $response );
}
public static function setupEnvironment() {
error_reporting ( E_ALL | E_STRICT );
ini_set ( 'display_errors', true );
date_default_timezone_set ( 'America/Sao_Paulo' );
self::$root = "../";
}
public static function prepare() {
self::setupEnvironment ();
Zend_Loader::registerAutoload ();
self::setupRegistry ();
self::setupFrontController ();
self::setupView ();
self::setupConfigDb();
self::setupTranslation();
}
public static function setupFrontController() {
self::$frontController = Zend_Controller_Front::getInstance ();
self::$frontController->throwExceptions ( true );
self::$frontController->returnResponse ( true );
self::$frontController->setControllerDirectory (
array ('default' => self::$root . 'application/default/controllers'));
}
public static function setupView() {
$view = new Zend_View ( );
$view->setEncoding ( 'UTF-8' );
$view->doctype('XHTML1_TRANSITIONAL');
Zend_Layout::startMvc ( array ('layoutPath' => self::$root . 'application/default/views/layouts','layout' => 'layout' ));
$registry = Zend_Registry::getInstance();
$registry->set('view',$view);
}
public static function sendResponse(Zend_Controller_Response_Http $response) {
$response->setHeader ( 'Content-Type', 'text/html; charset=UTF-8', true );
$response->sendResponse ();
}
public static function setupRegistry() {
self::$registry = new Zend_Registry ( array (), ArrayObject::ARRAY_AS_PROPS );
Zend_Registry::setInstance ( self::$registry );
$registry = Zend_Registry::getInstance ();
$registry->set ( 'root', self::$root );
}
public static function setupConfigDb() {
$config = new Zend_Config_Ini ( self::$root . 'config/config.ini', 'desenvolvimento' );
Zend_Registry::set( 'config', $config );
$db = Zend_Db::factory($config->db->adapter, $config->db->config->toArray());
Zend_Db_Table_Abstract::setDefaultAdapter($db);
Zend_Registry::set('db', $db);
}
public static function setupTranslation() {
$registry = Zend_Registry::getInstance ();
$translate = new Zend_Translate('gettext', '../traducao/pt-br/form.mo', 'pt');
Zend_Registry::set('translate', $translate);
}
}
Acredito que meu problema esteja sendo na hora de inicializar o translation....
No meu controler chamei via "<?=$this->translate->_("Hello World."); ?>" e recebi o erro:
Fatal error: Call to a member function _() on a non-object in /home/site/application/default/views/scripts/index/index.phtml on line 2 Linha 2 é essa chamada ai de cima....
Sugestões?
Obrigado.
Carregando comentários...