Example #1
0
/**
 * Created by PhpStorm.
 * User: ZyManch
 * Date: 25.04.14
 * Time: 16:19
 */
function array_merge_config()
{
    $result = array();
    foreach (func_get_args() as $config) {
        foreach ($config as $key => $value) {
            if (is_numeric($key)) {
                $result[] = $value;
            } else {
                if (isset($result[$key]) && is_array($result[$key])) {
                    $result[$key] = array_merge_config($result[$key], $value);
                } else {
                    $result[$key] = $value;
                }
            }
        }
    }
    return $result;
}
Example #2
0
{
    if (!is_string($text)) {
        $text = var_export($text, 1);
    }
    print iconv('UTF-8', 'CP866', $text);
}
$securePath = dirname(__FILE__) . '/../config.secure.json';
if (!file_exists($securePath)) {
    print 'Secure file is missed';
    return;
}
$secure = json_decode(file_get_contents($securePath), 1);
$yii = dirname(__FILE__) . '/../vendor/yiisoft/yii/framework/yii.php';
$config = dirname(__FILE__) . '/config/console.php';
$staticConfig = dirname(__FILE__) . '/config/static_config.php';
$config = (require_once $config);
$staticConfig = (require_once $staticConfig);
require_once dirname(__FILE__) . '/merge.php';
$config = array_merge_config($staticConfig, $config);
defined('STDIN') or define('STDIN', fopen('php://stdin', 'r'));
defined('YII_DEBUG') or define('YII_DEBUG', true);
require_once $yii;
if (isset($config)) {
    $app = Yii::createApplication('CConsoleApplication', $config);
    $app->commandRunner->addCommands(YII_PATH . '/cli/commands');
} else {
    $app = Yii::createApplication('CConsoleApplication', array('basePath' => dirname(__FILE__) . '/cli'));
}
/** @var $app CConsoleApplication */
Yii::setPathOfAlias('vendor', dirname(__FILE__) . '/../vendor');
$app->run();
Example #3
0
 /**
  * Creates console application, if Yii is available
  */
 private static function getYiiApplication()
 {
     if (!is_file(YII_PATH . '/yii.php')) {
         return null;
     }
     require_once YII_PATH . '/yii.php';
     spl_autoload_register(array('YiiBase', 'autoload'));
     if (\Yii::app() === null) {
         $config = (require_once dirname(__FILE__) . '/../config/console.php');
         $staticConfig = (require_once dirname(__FILE__) . '/../config/static_config.php');
         require_once dirname(__FILE__) . '/../merge.php';
         $mergedConfig = array_merge_config($staticConfig, $config);
         if ($mergedConfig) {
             $app = \Yii::createConsoleApplication($mergedConfig);
         } else {
             throw new \Exception("File from CONSOLE_CONFIG not found");
         }
     } else {
         $app = \Yii::app();
     }
     return $app;
 }