Pareces nuevo por aquí. Si quieres participar, ¡pulsa uno de estos botones!
<?php /** * Define el APP_PATH * * APP_PATH: * - Ruta al directorio de la aplicación (por defecto la ruta al directorio app) * - Esta ruta se utiliza para cargar los archivos de la aplicación **/ define('APP_PATH', dirname(dirname(__FILE__)) . '/.././'); /** * Define el CORE_PATH * * CORE_PATH: * - Ruta al directorio que contiene el núcleo de Kumbia (por defecto la ruta al directorio core/kumbia) **/ define('CORE_PATH', dirname(APP_PATH) . '/../core/'); /** * @see KumbiaException */ require CORE_PATH . 'kumbia/kumbia_exception.php'; require CORE_PATH . 'kumbia/config.php'; /** * @see Flash */ require CORE_PATH . 'libs/flash/flash.php'; /** * @see Util */ require CORE_PATH . 'kumbia/util.php'; class Cron { protected static $_config ; public function __construct() { /** * Lee la configuracion */ $this->_config = Config::read('config'); /** * Constante que indica si la aplicacion se encuentra en produccion * **/ define('PRODUCTION', $this->_config['application']['production']); /** * Carga la cache y verifica si esta cacheado el template, al * estar en produccion * **/ if(PRODUCTION) { /** * @see Cache **/ require CORE_PATH . 'libs/cache/cache.php'; /** * Asigna el driver para cache **/ if (isset($this->_config['application']['cache_driver'])) { Cache::set_driver($this->_config['application']['cache_driver']); } else { Cache::set_driver('file'); } } /** * Si se utiliza base de datos **/ if (! class_exists('Db', false)) { require CORE_PATH . 'libs/db/db.php'; } $this->__all_models(); $boot = Config::read('boot'); if (!empty($boot['modules']['libs'])) { $libs = explode(',', str_replace(' ', '', $boot['modules']['libs'])); foreach ($libs as $lib) { $this->lib($lib); } unset($libs); } } protected function __all_models($dir = null) { foreach (new DirectoryIterator(APP_PATH . "models/$dir") as $file) { if ($file->isDot() || $file->isDir()) { continue; } if ($file->isFile()) { include_once $file->getPathname(); //if ($controller) { $Model = Util::camelcase(basename($file->getFilename(), '.php')); $this->$Model = new $Model(); //self::$_injected_models[] = $Model; //} } } } protected function lib($lib) { $file = APP_PATH . "libs/$lib.php"; if (! is_file($file)) { $file = CORE_PATH . "libs/$lib/$lib.php"; if (! is_file($file)) { throw new KumbiaException("$lib no encontrada"); } } include_once $file; } } ?>
<?php require_once 'cron.php'; class Ejemplo extends Cron{ function hazAlgo(){ //Aqui se implementa el codigo de la funcion //Recuerden que tenemos acceso a los models por ejemplo $this->MiTabla->suMetodo(); //Funciona igual que los controladores //También pueden utilizar las librerias cargadas en su boot.ini Logger::debug("Un debug desde Logger"); } } $ejemplo = new Ejemplo(); $ejemplo->hazAlgo(); ?>