本文整理汇总了PHP中Phprojekt_Loader::tryToLoadClass方法的典型用法代码示例。如果您正苦于以下问题:PHP Phprojekt_Loader::tryToLoadClass方法的具体用法?PHP Phprojekt_Loader::tryToLoadClass怎么用?PHP Phprojekt_Loader::tryToLoadClass使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Phprojekt_Loader
的用法示例。
在下文中一共展示了Phprojekt_Loader::tryToLoadClass方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getModules
/**
* Returns a set of modules available and have Configuration sections.
*
* @return array Array with 'name' and 'label'.
*/
public function getModules()
{
$results = array();
// System settings
$model = Phprojekt_Loader::getModel('Core', 'General_Configuration');
if ($model) {
$results[] = array('name' => 'General', 'label' => Phprojekt::getInstance()->translate('General'));
}
// Module Configuration
foreach (scandir(PHPR_CORE_PATH) as $dir) {
$path = PHPR_CORE_PATH . DIRECTORY_SEPARATOR . $dir;
if ($dir == '.' || $dir == '..' || in_array($dir, self::$_excludePaths)) {
continue;
}
if (is_dir($path)) {
$configClass = Phprojekt_Loader::getModelClassname($dir, 'Configuration');
if (Phprojekt_Loader::tryToLoadClass($configClass)) {
$results[] = array('name' => $dir, 'label' => Phprojekt::getInstance()->translate($dir, null, $dir));
}
}
}
return $results;
}
示例2: getModules
/**
* Returns a set of modules available that have Setting.php files.
*
* @return array Array with 'name' and 'label'.
*/
public function getModules()
{
$results = array();
// System settings
$model = Phprojekt_Loader::getModel('Core', 'User_Setting');
if ($model) {
$results[] = array('name' => 'User', 'label' => Phprojekt::getInstance()->translate('User'));
}
$modelNotification = Phprojekt_Loader::getModel('Core', 'Notification_Setting');
if ($modelNotification) {
$results[] = array('name' => 'Notification', 'label' => Phprojekt::getInstance()->translate('Notification'));
}
// System modules settings
foreach (scandir(PHPR_CORE_PATH) as $dir) {
$path = PHPR_CORE_PATH . DIRECTORY_SEPARATOR . $dir;
if ($dir == '.' || $dir == '..' || in_array($dir, self::$_excludePaths)) {
continue;
}
if (is_dir($path)) {
$settingClass = Phprojekt_Loader::getModelClassname($dir, 'Setting');
if (Phprojekt_Loader::tryToLoadClass($settingClass)) {
$results[] = array('name' => $dir, 'label' => Phprojekt::getInstance()->translate($dir, null, $dir));
}
}
}
// User modules settings
foreach (scandir(PHPR_USER_CORE_PATH) as $dir) {
$path = PHPR_USER_CORE_PATH . $dir;
if ($dir == '.' || $dir == '..') {
continue;
}
if (is_dir($path)) {
$settingClass = Phprojekt_Loader::getModelClassname($dir, 'Setting');
if (Phprojekt_Loader::tryToLoadClass($settingClass, false, true)) {
$results[] = array('name' => $dir, 'label' => Phprojekt::getInstance()->translate($dir, null, $dir));
}
}
}
return $results;
}
示例3: testTryToLoadClass
/**
* Test tryToLoadClass
*/
public function testTryToLoadClass()
{
$this->assertTrue(Phprojekt_Loader::tryToLoadClass('Core_Models_User_Setting'));
$this->assertFalse(Phprojekt_Loader::tryToLoadClass('Timecard_Models_None'));
}