Beispiel #1
0
use Phalcon\Config, Phalcon\Db\Adapter\Pdo\Mysql, Phalcon\Events\Manager as EventsManager, Phalcon\Loader, Phalcon\Logger\Adapter\File as Logger, Phalcon\Mvc\Micro, Phalcon\Mvc\Model, Phalcon\Mvc\Url, Phalcon\Session\Adapter\Files as Session, Itslove\Passport\Core\CacheProvider, Itslove\Passport\Core\LogProvider, Itslove\Passport\Core\Provider, Itslove\Passport\Core\ViewProvider, Itslove\Passport\Helper\Validation;
/**
 * Passport 引导程序
 *
 * 加载配置文件, 设置通用功能并注册项目必要组件
 */
try {
    /**
     * 注册加载器
     */
    $loader = new Loader();
    $loader->registerNamespaces(array('Itslove\\Passport\\Api' => APP_PATH . 'api/', 'Itslove\\Passport\\Core' => APP_PATH . 'core/', 'Itslove\\Passport\\Front' => APP_PATH . 'front/', 'Itslove\\Passport\\Helper' => APP_PATH . 'helper/', 'Itslove\\Passport\\Models' => APP_PATH . 'models/'))->registerDirs(array(APP_PATH . 'api/', APP_PATH . 'core/', APP_PATH . 'front/', APP_PATH . 'helper/', APP_PATH . 'models/', APP_PATH . 'libraries/'))->register();
    /**
     * 注册服务项
     */
    Provider::init();
    // 创建Micro Application应用
    Provider::set('app', function () {
        return new Micro();
    });
    //加载配置文件
    Provider::set('config', function () {
        return new Config(require APP_PATH . 'config/app.php');
    });
    // 缓存
    Provider::set('cache', function ($provider) {
        if ($provider->config->cache->enable) {
            $cache = new CacheProvider($provider->config->cache->namespace);
            foreach ($provider->config->cache->servers as $server) {
                $info = explode(':', $server);
                $cache->addServer($info[0], $info[1]);