本文整理匯總了PHP中zotop::autoload方法的典型用法代碼示例。如果您正苦於以下問題:PHP zotop::autoload方法的具體用法?PHP zotop::autoload怎麽用?PHP zotop::autoload使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類zotop
的用法示例。
在下文中一共展示了zotop::autoload方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: array
/**
* 生成數據庫唯一實例
*
* @param $config
* @return object
*/
public function &instance($config = array())
{
static $instances = array();
//實例唯一的編號
$id = serialize($config);
if (!isset($instances[$id])) {
if (is_string($config)) {
$config = $this->parseDNS($config);
}
if (empty($config['driver'])) {
zotop::error(zotop::t('錯誤的數據庫配置文件', $config));
}
//數據庫驅動程序
$driver = 'database_' . strtolower($config['driver']);
//加載驅動程序
if (!zotop::autoload($driver)) {
zotop::error(zotop::t('未能找到數據庫驅動 "{$driver}"', $config));
}
//取得驅動實例
$instance = new $driver($config);
//存儲實例
$instances[$id] =& $instance;
}
return $instances[$id];
}
示例2: ucfirst
/**
* 生成數據庫唯一實例
*
* @param $config
* @return unknown_type
*/
public function &factory($config = '')
{
if (is_string($config)) {
$config = $this->parseDNS($config);
}
if (empty($config['driver'])) {
zotop::error(-1, 'there is some error in database config');
}
$driver = 'Zotop_DataBase_' . ucfirst(strtolower($config['driver']));
if (!zotop::autoload($driver)) {
zotop::error(-1, 'the database driver (' . $driver . ') does not support');
}
$db = new $driver($config);
return $db;
}
示例3: __construct
/**
* 類初始化
*
* @param string|array config 配置
* @return object
*/
public function __construct($config = array())
{
//支持json格式的緩存配置
if (is_string($config)) {
$config = json_decode($config, true);
}
if (is_array($config)) {
$config += array('driver' => zotop::config('system.cache.driver'), 'expire' => (int) zotop::config('system.cache.expire'));
}
if (empty($config['driver'])) {
$config['driver'] = 'file';
}
//緩存驅動程序
$driver = 'cache_' . strtolower($config['driver']);
//加載驅動程序
if (!zotop::autoload($driver)) {
zotop::error(zotop::t('未能找到緩存驅動 "{$driver}"', $config));
}
$this->driver = new $driver($config);
return $this->driver;
}