Exemplo n.º 1
0
<?php

use Phalcon\Loader, Phalcon\Mvc\Model, Phalcon\Mvc\Url, Phalcon\Crypt, Phalcon\Mvc\View\Engine\Volt, Phalcon\Db\Adapter\Pdo\Mysql as DbAdapter, Phalcon\Logger\Multiple as MultipleStreamLogger, Phalcon\Logger\Adapter\File as FileLogger, Phalcon\Logger\Adapter\Firephp as FirephpLogger, Webird\Module, Webird\Mvc\View\Simple as ViewSimple, Webird\Acl\Acl, Webird\DatabaseSessionReader, Webird\Locale\Locale, Webird\Locale\Gettext, Webird\Mailer\Manager as MailManager, Webird\Logger\Adapter\Error as ErrorLogger, Webird\Logger\Adapter\Firelogger;
/**
 *
 */
Model::setup(['phqlLiterals' => false, 'notNullValidations' => false]);
/**
 *
 */
$di->set('loader', function () use($config) {
    $commonDir = $config->path->commonDir;
    $modulesDir = $config->path->modulesDir;
    $loader = new Loader();
    $loader->setExtensions(['php']);
    $loader->registerNamespaces(['Webird\\Models' => "{$commonDir}/models", 'Webird\\Forms' => "{$commonDir}/forms", 'Webird\\Plugins' => "{$commonDir}/plugins", 'Webird' => "{$commonDir}/library"]);
    $loader->register();
    $classes = [];
    foreach ($config->app->modules as $moduleName) {
        $class = 'Webird\\' . ucfirst($moduleName) . '\\Module';
        $path = Module::moduleNameToDir($moduleName) . 'Module.php';
        $classes[$class] = $path;
    }
    $loader->registerClasses($classes, true);
    $loader->register();
    return $loader;
});
$di->get('loader');
/**
 *
 */
Exemplo n.º 2
0
<?php

use Phalcon\Loader;
use Phalcon\Mvc\Micro;
use Phalcon\Mvc\Micro\Collection as MicroCollection;
use Phalcon\Di\FactoryDefault;
use Phalcon\Db\Adapter\Pdo\Mysql as PdoMysql;
// Use Loader() to autoload our model
$loader = new Loader();
$loader->registerDirs(array('models', 'controllers'))->register();
$loader->setExtensions(array("php", "inc", "phb"));
$di = new FactoryDefault();
// Set up the database service
$di->set('db', function () {
    return new PdoMysql(array("host" => "localhost", "username" => "root", "password" => "", "dbname" => "oversign"));
});
$app = new Micro($di);
$users = new MicroCollection();
$users->setHandler("UserController", true);
$users->setPrefix('/user');
$users->get('/', 'hello');
$app->mount($users);
// Retrieves all robots
$app->get('/api/robots', function () {
    $phql = "SELECT * FROM Robots ORDER BY name";
    $robots = $app->modelsManager->executeQuery($phql);
    $data = array();
    foreach ($robots as $robot) {
        $data[] = array('id' => $robot->id, 'name' => $robot->name);
    }
    echo json_encode($data);
Exemplo n.º 3
0
<?php

use Phalcon\Loader;
use Phalcon\Mvc\Micro;
use Phalcon\Di\FactoryDefault;
use Phalcon\Db\Adapter\Pdo\Mysql as PdoMysql;
use Phalcon\Http\Response;
// use Loader() to autoload our model
$loader = new Loader();
$loader->setExtensions(array("php"));
$loader->registerDirs(array(__DIR__ . '/models/'))->register();
// set up the database service
$di = new FactoryDefault();
//----------------------------
//DATABASE CONFIG
//----------------------------
$di->set('db', function () {
    return new PdoMysql(array("host" => "localhost", "port" => "", "username" => "root", "password" => "faraz", "dbname" => "products"));
});
//table name in schema is Products, if change is made to this table name then
//API method handlers should be updated
// bind the DI to the application
$app = new Micro($di);
// API -------------------------------------------
// Products is the table name in MySQL database
// Retrieves all products
$app->get('/api/products', function () use($app) {
    $phql = "SELECT * FROM Products ORDER BY name";
    //Products is table name
    $products = $app->modelsManager->executeQuery($phql);
    $data = array();
Exemplo n.º 4
0
 public function setExtensions(array $extensions)
 {
     return parent::setExtensions($extensions);
 }