class Users extends \Phalcon\Mvc\Model { public function getSource() { return 'mk_user'; }
}
echo Test\Models\Users::count();
Undefined property: Phalcon\Config::$cache
|
Mar '13 |
3 |
1262 |
2 |
class Users extends \Phalcon\Mvc\Model { public function getSource() { return 'mk_user'; }
}
echo Test\Models\Users::count();
Undefined property: Phalcon\Config::$cache
<?php
error_reporting(E_ERROR);
//error_reporting(0);
if (!defined('ROOT_PATH')) {
define('ROOT_PATH', dirname(dirname(__FILE__)));
}
try {
//var_dump($_GET);
//exit;
/**
* The FactoryDefault Dependency Injector automatically register the right services providing a full stack framework
*/
$di = new \Phalcon\DI\FactoryDefault();
//
//$config = new Phalcon\Config\Adapter\Ini(__DIR__.'/../common/config/config.ini');
$config=require __DIR__.'/../common/config/config.php';
$di->setShared('config', $config);
/**
* Registering a router
*/
$di->set('router', function(){
$host=explode('.',strtolower($_SERVER["HTTP_HOST"]));//SERVER_NAME
if (count($host)<=1 || $host[0]=='www') $host[0]='home';
$_GET['_url']=isset($_GET['_url'])?'/'.$host[0].$_GET['_url']:'/'.$host[0].'/';
return require __DIR__.'/../common/config/routes.php';
});
/**
* The URL component is used to generate all kind of urls in the application
*/
$di->set('url', function(){
$url = new \Phalcon\Mvc\Url();
$url->setBaseUri('/');
return $url;
});
/**
* Start the session the first time some component request the session service
*/
$di->set('session', function(){
$session = new \Phalcon\Session\Adapter\Files();
$session->start();
return $session;
});
/**
* If the configuration specify the use of metadata adapter use it or use memory otherwise
*/
$di->set('modelsMetadata', function() use ($config) {
if(isset($config['metadata'])){
$metadataAdapter = 'Phalcon\Mvc\Model\Metadata\\'.$config['metadata']['adapter'];
return new $metadataAdapter();
} else {
return new Phalcon\Mvc\Model\Metadata\Memory();
}
});
$di->set('profiler', function(){
return new Phalcon\Db\Profiler();
});
$di->setShared('modelsManager', function() {
$eventsManager = new \Phalcon\Events\Manager();
//Attach an anonymous function as a listener for "model" events
$eventsManager->attach('model', function($event, $model){
//Catch events produced by the Robots model
if (get_class($model) == 'Robots') {
if ($event->getType() == 'beforeSave') {
if ($modle->name == 'Scooby Doo') {
echo "Scooby Doo isn't a robot!";
return false;
}
}
}
return true;
});
//Setting a default EventsManager
$modelsManager = new \Phalcon\Mvc\Model\Manager();
$modelsManager->setEventsManager($eventsManager);
return $modelsManager;
});
//Set the views cache service
$di->set('viewCache', function(){
//Cache data for one day by default
$frontCache = new Phalcon\Cache\Frontend\Output(array(
"lifetime" => 0//86400
));
//File backend settings
$cache = new Phalcon\Cache\Backend\File($frontCache, array(
"cacheDir" => __DIR__."/../runtime/cache/",
));
return $cache;
});
$di->set('dispatcher', function() use ($di) {
$evManager = $di->getShared('eventsManager');
$evManager->attach(
"dispatch:beforeException", function($event, $dispatcher, $exception){
switch ($exception->getCode()) {
case \Phalcon\Mvc\Dispatcher::EXCEPTION_HANDLER_NOT_FOUND:
case \Phalcon\Mvc\Dispatcher::EXCEPTION_ACTION_NOT_FOUND:
$dispatcher->forward(array(
'controller' => 'index',
'action' => 'show404'
));
return false;
}
});
//$security = new MallKeeper\Plugins\Security($di);
/**
* We listen for events in the dispatcher using the Security plugin
*/
//$evManager->attach('dispatch', $security);
$dispatcher = new \Phalcon\Mvc\Dispatcher();
$dispatcher->setEventsManager($evManager);
return $dispatcher;
});
/**
* Main logger file
*/
$di->set('logger', function() {
return new \Phalcon\Logger\Adapter\File(__DIR__.'/../runtime/logs/'.date('Y-m-d').'.log');
}, true);
/**
* Register the flash service with custom CSS classes
*/
$di->set('flash', function(){
return new Phalcon\Flash\Direct(array(
'error' => 'alert alert-error',
'success' => 'alert alert-success',
'notice' => 'alert alert-info',
));
});
/**
* Error handler
*/
set_error_handler(function($errno, $errstr, $errfile, $errline) use ($di)
{
if (!(error_reporting() & $errno)) {
return;
}
$di->getFlash()->error($errstr);
$di->getLogger()->log($errstr.' '.$errfile.':'.$errline, Phalcon\Logger::ERROR);
return true;
});
/**
* Handle the request
*/
$application = new \Phalcon\Mvc\Application();
$application->setDI($di);
/**
* Register application modules
*/
$application->registerModules(require __DIR__.'/../common/config/modules.php');
echo $application->handle()->getContent();
} catch (Phalcon\Exception $e) {
echo $e->getMessage();
} catch (PDOException $e){
echo $e->getMessage();
}