当前位置: 首页>>代码示例>>PHP>>正文


PHP core_php_time_limit::currentend方法代码示例

本文整理汇总了PHP中core_php_time_limit::currentend方法的典型用法代码示例。如果您正苦于以下问题:PHP core_php_time_limit::currentend方法的具体用法?PHP core_php_time_limit::currentend怎么用?PHP core_php_time_limit::currentend使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在core_php_time_limit的用法示例。


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

示例1: raise

 /**
  * Sets the PHP time limit to a number of seconds from now.
  *
  * This function will always extend the time limit (in other words, if the time
  * limit has already been set further in the future, it will do nothing).
  *
  * In order to support front-end servers which may time out silently if no
  * output is displayed, you should ideally only call this function if you expect
  * some output to be displayed at the same time. (I.e. if you call this function
  * each time around a loop, also display some output each time around the loop,
  * such as a progress bar update.)
  *
  * @param int $newlimit Limit in seconds from now (0 = infinite)
  */
 public static function raise($newlimit = 0)
 {
     global $CFG;
     // Special behaviour in unit tests so that we can check the value.
     if (PHPUNIT_TEST) {
         self::$unittestdata[] = $newlimit;
     }
     // If the time limit has already been set to 'infinite', ignore. Also do
     // nothing in CLI scripts (including unit testing) which are set to
     // infinite by default.
     if (self::$currentend === 0 || CLI_SCRIPT) {
         return;
     }
     // Maximum time limit can be set in config. This can be useful for front-end
     // server systems; if the front-end server has a timeout without receiving
     // data, it's helpful to set this timeout lower to ensure that a suitable
     // error gets logged.
     if (!empty($CFG->maxtimelimit)) {
         $realtimeout = max(1, $CFG->maxtimelimit);
         if ($newlimit === 0) {
             $newlimit = $realtimeout;
         } else {
             $newlimit = min($newlimit, $realtimeout);
         }
     }
     // If new time limit is infinite, just set that.
     if ($newlimit === 0) {
         self::$currentend = 0;
         @set_time_limit(0);
         return;
     }
     // Calculate time limits to make sure it's longer than previous.
     $now = time();
     $newend = $now + $newlimit;
     if (self::$currentend !== -1 && self::$currentend > $newend) {
         // Existing time limit is already longer, so do nothing.
         return;
     }
     // Set time limit and update current value.
     @set_time_limit($newlimit);
     self::$currentend = $newend;
 }
开发者ID:evltuma,项目名称:moodle,代码行数:56,代码来源:php_time_limit.php


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