本文整理汇总了PHP中Library::useNamedRuns方法的典型用法代码示例。如果您正苦于以下问题:PHP Library::useNamedRuns方法的具体用法?PHP Library::useNamedRuns怎么用?PHP Library::useNamedRuns使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Library
的用法示例。
在下文中一共展示了Library::useNamedRuns方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: init
static function init()
{
if (self::$mode == self::PRODUCTION) {
self::$useTurboSpeed = true;
}
$_ENV['dir.recess'] = self::$recessDir;
$_ENV['dir.apps'] = self::$appsDir;
$_ENV['dir.plugins'] = self::$pluginsDir;
$_ENV['dir.temp'] = self::$dataDir . 'temp/';
$_ENV['dir.test'] = self::$recessDir . 'test/';
if (!isset($_ENV['url.assetbase'])) {
$_ENV['url.assetbase'] = $_ENV['url.base'];
}
date_default_timezone_set(self::$defaultTimeZone);
require_once $_ENV['dir.recess'] . 'recess/lang/Library.class.php';
Library::addClassPath(self::$recessDir);
Library::addClassPath(self::$pluginsDir);
Library::addClassPath(self::$appsDir);
if (self::$useTurboSpeed) {
Library::$useNamedRuns = true;
$cacheProvidersReversed = array_reverse(self::$cacheProviders);
foreach ($cacheProvidersReversed as $provider) {
$provider = $provider . 'CacheProvider';
Cache::reportsTo(new $provider());
}
}
Library::init();
Library::beginNamedRun('recess');
Library::import('recess.database.Databases');
Library::import('recess.database.orm.ModelDataSource');
if (empty(RecessConf::$defaultDatabase)) {
$message = 'Congratulations, Recess is almost setup!<br />';
$message .= '<strong>Next Step(s):</strong>';
$message .= '<ul>';
$pdoMessages = array();
if (!extension_loaded('PDO')) {
$pdoMessages[] = 'Install PHP\'s PDO Extension';
$pdoMessages[] = 'Install Sqlite or MySQL PDO Driver';
} else {
$drivers = pdo_drivers();
$hasMySql = in_array('mysql', $drivers);
$hasSqlite = in_array('sqlite', $drivers);
if (!$hasMySql && !$hasSqlite) {
$pdoMessages[] = 'Install Sqlite and/or MySQL PDO Driver';
} else {
$databases = '';
if ($hasSqlite) {
$databases = 'Sqlite';
}
if ($hasMySql) {
if ($databases != '') {
$databases .= ', ';
}
$databases .= 'MySql';
}
$pdoMessages[] = 'You have drivers for the following databases: ' . $databases;
}
}
$pdoMessages[] = 'Setup <strong>recess-conf.php</strong> to point to your database.';
$pdoMessages[] = 'Checkout the <strong>README.textile</strong> file for instructions.';
$pdoMessages = '<li>' . implode('</li><li>', $pdoMessages) . '</li>';
$message .= $pdoMessages . '</ul>';
die($message);
}
try {
Databases::setDefaultSource(new ModelDataSource(RecessConf::$defaultDatabase));
} catch (DataSourceCouldNotConnectException $e) {
$databaseType = parse_url(RecessConf::$defaultDatabase[0], PHP_URL_SCHEME);
if (!in_array($databaseType, pdo_drivers())) {
$message = 'It looks like PHP could not load the driver needed to connect to <strong>' . RecessConf::$defaultDatabase[0] . '</strong><br />';
$message .= 'Please install the <strong>' . ucfirst($databaseType) . '</strong> PDO driver and enable it in php.ini';
} else {
$message = 'Error connecting to data source: ' . $e->getMessage();
}
die($message);
}
if (!empty(RecessConf::$namedDatabases)) {
foreach (RecessConf::$namedDatabases as $name => $sourceInfo) {
Databases::addSource($name, new ModelDataSource($sourceInfo));
}
}
Library::import('recess.framework.Application');
foreach (self::$applications as $key => $app) {
if (!Library::classExists($app)) {
die('Application "' . $app . '" does not exist. Remove it from recess-conf.php, RecessConf::$applications array.');
} else {
$app = Library::getClassName($app);
self::$applications[$key] = new $app();
}
}
Library::import('recess.framework.DefaultPolicy');
self::$policy = new DefaultPolicy();
}