本文整理汇总了PHP中KunenaForumCategoryHelper::_instances方法的典型用法代码示例。如果您正苦于以下问题:PHP KunenaForumCategoryHelper::_instances方法的具体用法?PHP KunenaForumCategoryHelper::_instances怎么用?PHP KunenaForumCategoryHelper::_instances使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KunenaForumCategoryHelper
的用法示例。
在下文中一共展示了KunenaForumCategoryHelper::_instances方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: initialize
/**
* Initialize class.
*/
static public function initialize()
{
KUNENA_PROFILER ? KunenaProfiler::instance()->start('function '.__CLASS__.'::'.__FUNCTION__.'()') : null;
if (KunenaConfig::getInstance()->get('cache_cat'))
{
// FIXME: Experimental caching.
/** @var JCache|JCacheControllerCallback $cache */
$cache = JFactory::getCache('com_kunena', 'callback');
$cache->setLifeTime(180);
self::$_instances = $cache->call(array('KunenaForumCategoryHelper', 'loadCategories'));
}
else
{
self::$_instances = self::loadCategories();
}
if (is_null(self::$_tree))
{
self::buildTree(self::$_instances);
}
self::$allowed = KunenaAccess::getInstance()->getAllowedCategories();
KUNENA_PROFILER ? KunenaProfiler::instance()->stop('function '.__CLASS__.'::'.__FUNCTION__.'()') : null;
}
示例2: loadCategories
protected static function loadCategories()
{
KUNENA_PROFILER ? KunenaProfiler::instance()->start('function ' . __CLASS__ . '::' . __FUNCTION__ . '()') : null;
$db = JFactory::getDBO();
$query = "SELECT * FROM #__kunena_categories ORDER BY ordering, name";
$db->setQuery($query);
$results = (array) $db->loadAssocList();
KunenaError::checkDatabaseError();
self::$_instances = array();
self::$_tree = array();
if (empty($results)) {
KUNENA_PROFILER ? KunenaProfiler::instance()->stop('function ' . __CLASS__ . '::' . __FUNCTION__ . '()') : null;
return;
}
foreach ($results as $category) {
$instance = new KunenaForumCategory($category);
$instance->exists(true);
self::$_instances[$instance->id] = $instance;
if (!isset(self::$_tree[(int) $instance->id])) {
self::$_tree[$instance->id] = array();
}
self::$_tree[$instance->parent_id][$instance->id] =& self::$_tree[(int) $instance->id];
}
unset($results);
// TODO: remove this by adding level into table
$heap = array(0);
while (($parent = array_shift($heap)) !== null) {
foreach (self::$_tree[$parent] as $id => $children) {
if (!empty($children)) {
array_push($heap, $id);
}
self::$_instances[$id]->level = $parent ? self::$_instances[$parent]->level + 1 : 0;
}
}
KUNENA_PROFILER ? KunenaProfiler::instance()->stop('function ' . __CLASS__ . '::' . __FUNCTION__ . '()') : null;
}