• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP is_early_init函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了PHP中is_early_init函数的典型用法代码示例。如果您正苦于以下问题:PHP is_early_init函数的具体用法?PHP is_early_init怎么用?PHP is_early_init使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了is_early_init函数的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。

示例1: __call

 /**
  * Constructor - to be used by core code only.
  * @param string $method The method to call
  * @param array $arguments Arguments to pass to the method being called
  * @return string
  */
 public function __call($method, $arguments)
 {
     global $OUTPUT, $PAGE;
     $recursing = false;
     if ($method == 'notification') {
         // Catch infinite recursion caused by debugging output during print_header.
         $backtrace = debug_backtrace();
         array_shift($backtrace);
         array_shift($backtrace);
         $recursing = is_early_init($backtrace);
     }
     $earlymethods = array('fatal_error' => 'early_error', 'notification' => 'early_notification');
     // If lib/outputlib.php has been loaded, call it.
     if (!empty($PAGE) && !$recursing) {
         if (array_key_exists($method, $earlymethods)) {
             //prevent PAGE->context warnings - exceptions might appear before we set any context
             $PAGE->set_context(null);
         }
         $PAGE->initialise_theme_and_output();
         return call_user_func_array(array($OUTPUT, $method), $arguments);
     }
     $this->initialising = true;
     // Too soon to initialise $OUTPUT, provide a couple of key methods.
     if (array_key_exists($method, $earlymethods)) {
         return call_user_func_array(array('bootstrap_renderer', $earlymethods[$method]), $arguments);
     }
     throw new coding_exception('Attempt to start output before enough information is known to initialise the theme.');
 }
开发者ID:vinoth4891,项目名称:clinique,代码行数:34,代码来源:setuplib.php


示例2: cobalt_exception_handler

function cobalt_exception_handler($ex) {
    global $CFG, $DB, $OUTPUT, $USER, $FULLME, $SESSION, $PAGE;
    // detect active db transactions, rollback and log as error
    abort_all_db_transactions();
    $info = get_cobaltexception_info($ex);
    if (($ex instanceof required_capability_exception) && !CLI_SCRIPT && !AJAX_SCRIPT && !empty($CFG->autologinguests) && !empty($USER->autologinguest)) {
        $SESSION->wantsurl = qualified_me();
        redirect(get_login_url());
    }

    if (debugging('', DEBUG_MINIMAL)) {
        $logerrmsg = "Default exception handler: " . $info->message . ' Debug: ' . $info->debuginfo . "\n" . format_backtrace($info->backtrace, true);
        error_log($logerrmsg);
    }

    if (is_early_init($info->backtrace)) {
        echo bootstrap_renderer::early_error($info->message, $info->link, $info->backtrace, $info->debuginfo, $info->errorcode);
    } else {
        try {
            if ($DB) {
                // If you enable db debugging and exception is thrown, the print footer prints a lot of rubbish
                $DB->set_debug(0);
            }
            cobaltexception_format($ex);
        } catch (Exception $out_ex) {
            // default exception handler MUST not throw any exceptions!!
            // the problem here is we do not know if page already started or not, we only know that somebody messed up in outputlib or theme
            // so we just print at least something instead of "Exception thrown without a stack frame in Unknown on line 0":-(
            if (CLI_SCRIPT or AJAX_SCRIPT) {
                // just ignore the error and send something back using the safest method
                echo bootstrap_renderer::early_error($info->message, $info->link, $info->backtrace, $info->debuginfo, $info->errorcode);
            } else {
                echo bootstrap_renderer::early_error_content($info->message, $info->link, $info->backtrace, $info->debuginfo);
                $outinfo = get_exception_info($out_ex);
                echo bootstrap_renderer::early_error_content($outinfo->message, $outinfo->link, $outinfo->backtrace, $outinfo->debuginfo);
            }
        }
    }

    exit(1); // General error code
}
开发者ID:anilch,项目名称:Personel,代码行数:41,代码来源:lib.php



注:本文中的is_early_init函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP is_email函数代码示例发布时间:2022-05-15
下一篇:
PHP is_dynamic_sidebar函数代码示例发布时间:2022-05-15
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap