本文整理汇总了PHP中Addons::loadAllValidAddons方法的典型用法代码示例。如果您正苦于以下问题:PHP Addons::loadAllValidAddons方法的具体用法?PHP Addons::loadAllValidAddons怎么用?PHP Addons::loadAllValidAddons使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Addons
的用法示例。
在下文中一共展示了Addons::loadAllValidAddons方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: execApp
/**
* 执行App控制器
* @access public
* @return void
*/
public static function execApp()
{
// 加载所有插件
if (C('APP_PLUGIN_ON')) {
tsload(CORE_LIB_PATH . '/addons.class.php');
tsload(CORE_LIB_PATH . '/addons/Hooks.class.php');
tsload(CORE_LIB_PATH . '/addons/AbstractAddons.class.php');
tsload(CORE_LIB_PATH . '/addons/NormalAddons.class.php');
tsload(CORE_LIB_PATH . '/addons/SimpleAddons.class.php');
tsload(CORE_LIB_PATH . '/addons/TagsAbstract.class.php');
Addons::loadAllValidAddons();
}
//创建Action控制器实例
$className = MODULE_NAME . 'Action';
tsload(APP_ACTION_PATH . '/' . $className . '.class.php');
if (!class_exists($className)) {
$className = 'EmptyAction';
tsload(APP_ACTION_PATH . '/EmptyAction.class.php');
if (!class_exists($className)) {
throw_exception(L('_MODULE_NOT_EXIST_') . MODULE_NAME);
}
}
$module = new $className();
//异常处理
if (!$module) {
// 模块不存在 抛出异常
throw_exception(L('_MODULE_NOT_EXIST_') . MODULE_NAME);
}
//获取当前操作名
$action = ACTION_NAME;
//执行当前操作
call_user_func(array(&$module, $action));
return;
}
示例2: init
/**
* App初始化
*/
public static function init()
{
// 设定错误和异常处理
set_error_handler(array('App', 'appError'));
set_exception_handler(array('App', 'appException'));
// Session初始化
if (!session_id()) {
session_start();
}
// 加载所有插件
if (C('APP_PLUGIN_ON')) {
Addons::loadAllValidAddons();
}
}
示例3: init
/**
* App初始化
* @access public
* @return void
*/
public static function init()
{
// 设定错误和异常处理
set_error_handler(array('App', 'appError'));
set_exception_handler(array('App', 'appException'));
// Session初始化
if (!session_id()) {
session_start();
}
// 加载所有插件
if (C('APP_PLUGIN_ON')) {
tsload(CORE_LIB_PATH . '/addons.class.php');
tsload(CORE_LIB_PATH . '/addons/Hooks.class.php');
tsload(CORE_LIB_PATH . '/addons/AbstractAddons.class.php');
tsload(CORE_LIB_PATH . '/addons/NormalAddons.class.php');
tsload(CORE_LIB_PATH . '/addons/SimpleAddons.class.php');
tsload(CORE_LIB_PATH . '/addons/TagsAbstract.class.php');
Addons::loadAllValidAddons();
}
}
示例4: execApp
/**
* 执行App控制器
* @access public
* @return void
*/
public static function execApp()
{
//防止CSRF
if (strtoupper($_SERVER['REQUEST_METHOD']) == 'POST' && stripos($_SERVER['HTTP_REFERER'], SITE_URL) !== 0 && $_SERVER['HTTP_USER_AGENT'] !== 'Shockwave Flash') {
die('illegal request.');
}
// 使用手持设备时, 对用户的访问默认跳转至移动版, 除非用户指定访问普通版
if ($_SESSION['wap_to_normal'] != '1' && cookie('wap_to_normal') != '1' && $_REQUEST['wap_to_normal'] != '1' && !isiPad()) {
// 根据各应用的配置来判断是否存在手机版访问配置文件
$publicAccess = array('message', 'register', 'feed');
if (APP_NAME == 'public' && !in_array(strtolower(MODULE_NAME), $publicAccess) && strtolower(ACTION_NAME) != 'message' && isMobile() && in_array('wap', C('DEFAULT_APPS'))) {
// 智能手机到3G版
if (APP_NAME == 'public' && (isiPhone() || isAndroid())) {
// iOS和Android跳转至3G版
U('w3g/Index/index', '', true);
} else {
// 其他手机跳转至WAP版
U('wap/Index/index', '', true);
}
}
}
// 加载所有插件
if (C('APP_PLUGIN_ON')) {
tsload(CORE_LIB_PATH . '/addons.class.php');
tsload(CORE_LIB_PATH . '/addons/Hooks.class.php');
tsload(CORE_LIB_PATH . '/addons/AbstractAddons.class.php');
tsload(CORE_LIB_PATH . '/addons/NormalAddons.class.php');
tsload(CORE_LIB_PATH . '/addons/SimpleAddons.class.php');
tsload(CORE_LIB_PATH . '/addons/TagsAbstract.class.php');
Addons::loadAllValidAddons();
}
//创建Action控制器实例
$className = MODULE_NAME . 'Action';
tsload(APP_ACTION_PATH . '/' . $className . '.class.php');
if (!class_exists($className)) {
$className = 'EmptyAction';
tsload(APP_ACTION_PATH . '/EmptyAction.class.php');
if (!class_exists($className)) {
throw_exception(L('_MODULE_NOT_EXIST_') . ' ' . MODULE_NAME);
}
}
$module = new $className();
//异常处理
if (!$module) {
// 模块不存在 抛出异常
throw_exception(L('_MODULE_NOT_EXIST_') . ' ' . MODULE_NAME);
}
//获取当前操作名
$action = ACTION_NAME;
//执行当前操作
call_user_func(array(&$module, $action));
//执行计划任务
model('Schedule')->run();
return;
}
示例5: init
/**
+----------------------------------------------------------
* 应用程序初始化
+----------------------------------------------------------
* @access public
+----------------------------------------------------------
* @return void
+----------------------------------------------------------
*/
public static function init()
{
// 设定错误和异常处理
set_error_handler(array('App', 'appError'));
set_exception_handler(array('App', 'appException'));
//[RUNTIME]
// 检查项目是否编译过
// 在部署模式下会自动在第一次执行的时候编译项目
if (defined('RUNTIME_MODEL')) {
// 运行模式无需载入项目编译缓存
} else {
if (is_file(RUNTIME_PATH . '/~app.php') && (!is_file(CONFIG_PATH . 'config.php') || filemtime(RUNTIME_PATH . '/~app.php') > filemtime(CONFIG_PATH . 'config.php'))) {
// 直接读取编译后的项目文件
C(include RUNTIME_PATH . '/~app.php');
} else {
// 预编译项目
App::build();
}
}
//[/RUNTIME]
//加载所有插件
Addons::loadAllValidAddons();
if (!defined('MODULE_NAME')) {
define('MODULE_NAME', App::getModule());
}
// Module名称
if (!defined('ACTION_NAME')) {
define('ACTION_NAME', App::getAction());
}
// Action操作
// If already slashed, strip.
if (get_magic_quotes_gpc()) {
$_GET = stripslashes_deep($_GET);
$_POST = stripslashes_deep($_POST);
$_COOKIE = stripslashes_deep($_COOKIE);
}
// 初始化运行时缓存
object_cache_init();
// 修正IIS下的$_SERVER['REQUEST_URI']
if ($_SERVER['REQUEST_URI']) {
$_SERVER['REQUEST_URI'] = $_SERVER['PHP_SELF'] . ($_SERVER['QUERY_STRING'] ? '?' . $_SERVER['QUERY_STRING'] : '');
}
// 站点设置
App::checkSiteOption();
// 项目开始标签
if (C('APP_PLUGIN_ON')) {
tag('app_begin');
}
// 设置系统时区 PHP5支持
if (function_exists('date_default_timezone_set')) {
date_default_timezone_set(C('DEFAULT_TIMEZONE'));
}
// 允许注册AUTOLOAD方法
if (C('APP_AUTOLOAD_REG') && function_exists('spl_autoload_register')) {
spl_autoload_register(array('Think', 'autoload'));
}
// 重塑Session (必须位于session_start()之前)
if (isset($_POST['PHPSESSID'])) {
Session::destroy();
session_id($_POST['PHPSESSID']);
}
// 初始化Session
if (C('SESSION_AUTO_START')) {
Session::start();
}
/*
* 应用调度过滤器
* 如果没有加载任何URL调度器, 默认只支持 QUERY_STRING 方式
*/
if (C('URL_DISPATCH_ON')) {
Dispatcher::dispatch();
}
/*
* PHP_FILE 由内置的Dispacher定义
* 如果不使用该插件,需要重新定义
*/
if (!defined('PHP_FILE')) {
define('PHP_FILE', _PHP_FILE_);
}
// 取得模块和操作名称
// 可以在Dispatcher中定义获取规则
// 使用手持设备时, 对home的访问默认跳转至移动版, 除非用户指定访问普通版。
if (APP_NAME == 'home' && $_SESSION['wap_to_normal'] != '1' && cookie('wap_to_normal') != '1' && $_REQUEST['wap_to_normal'] != '1') {
if (MODULE_NAME == 'Public' && ACTION_NAME == 'tryOtherLogin') {
} else {
if (MODULE_NAME == 'Widget' && ACTION_NAME == 'addonsRequest') {
} else {
if (isiOS() || isAndroid()) {
// iOS和Android跳转至3G版
U('w3g/Index/index', '', true);
} else {
//.........这里部分代码省略.........