Example #1
0
    if (null == $timer_instance) {
        $timer_instance = new \Whathood\Timer();
    }
    return $timer_instance;
}, 'Zend\\Config\\Reader\\Yaml' => function ($sm) {
    return new \Zend\Config\Reader\Yaml(array('Spyc', 'YAMLLoadString'));
}, 'Whathood\\Config\\Yaml' => function ($sm) {
    $reader = $sm->get('Zend\\Config\\Reader\\Yaml');
    $app_root = getenv("APPLICATION_ROOT");
    if (empty($app_root) or $app_root == "") {
        $app_root = ".";
    }
    return $reader->fromFile($app_root . '/../whathood.yml');
}, 'Whathood\\Config' => function ($sm) {
    $yaml_config = $sm->get('Whathood\\Config\\Yaml');
    $config = \Whathood\Config::build($yaml_config);
    return $config;
}, 'Whathood\\Logger' => function ($sm) {
    $config = $sm->get('Whathood\\Config');
    $file_writer = new \Zend\Log\Writer\Stream($config->log_file);
    $filter = new \Zend\Log\Filter\Priority(Logger::INFO);
    $file_writer->addFilter($filter);
    $logger = new \Whathood\Logger();
    $logger->addWriter($file_writer);
    // DO NOT THINK THIS IS WORKING register the logger to handle php errors
    #\Zend\Log\Logger::registerErrorHandler($logger);
    #\Zend\Log\Logger::registerExceptionHandler($logger);
    return $logger;
}, 'Whathood\\ConsoleLogger' => function ($sm) {
    $logger = $sm->get('Whathood\\Logger');
    $console_writer = new \Zend\Log\Writer\Stream('php://output');