/ Sweet home / Blog / Archives / Doctrine Event Listener /

Doctrine Event Listener

L'ORM Doctrine a un système d'évènements et ça c'est quand même très sympa et très utile... par exemple quand on utilise MySQL et qu'on a besoin d'une connexion en utf-8:

class ConnectListener extends Doctrine_EventListener
{
    public function postConnect(Doctrine_Event $event)
    {
        $this->setNamesUtf8();
    }

    private function setNamesUtf8()
    {
        Doctrine_Manager::connection()->setCharset('utf8');
    }
}
Doctrine_Manager::connection()->setListener(new ConnectListener());

Et voilà... une connexion qui passe toute seule en utf-8 quand on en a besoin.


Last update: 2010-09-05 07:16:06


<< Un cache disque pour doctrine
Python wannabe >>
 

Comment this





Benchmark ! :-)

  1. dispatch
    time  : 0.0470
    memory: 540.87 kb
  2. cms\controllers\Index::norouteAction: find published page
    time  : 0.0048
    memory: 210.21 kb
  3. cms\controllers\Index::norouteAction: find template
    time  : 0.0001
    memory: 1.22 kb
  4. cms\controllers\Index::norouteAction: find layout
    time  : 0.0001
    memory: 1.13 kb
  5. cms\models\Page::getPublishedChildren
    time  : 0.0266
    memory: 373.38 kb
  6. cms\models\Page::getAncestors
    time  : 0.0085
    memory: 305.23 kb
  7. cms\models\Page::getParent
    time  : 0.0084
    memory: 303.65 kb
  8. cms\models\Page::getPublishedLeftSibling
    time  : 0.0036
    memory: 106.76 kb
  9. cms\models\Page::getPublishedRightSibling
    time  : 0.0038
    memory: 102.65 kb
  10. cms\models\Page::getPublishedComments
    time  : 0.0010
    memory: 28.01 kb