php 定義php代碼已耗用時間

來源:互聯網
上載者:User

php 定義php代碼已耗用時間
定義和用法
time_sleep_until() 函數延遲代碼執行直到指定的時間。

文法
time_sleep_until(timestamp)

參數 描述
timestamp 必需。指令碼喚醒時的時間戳記。

說明
使指令碼暫停執行,直到指定的 timestamp。

傳回值
如果成功則返回 TRUE,失敗則返回 FALSE。

錯誤/異常
如果指定的時間戳記位於過去,則該函數將產生一個 E_WARNING。

提示和注釋
注釋:所有訊號都將在指令碼喚醒後遞送。

注釋:本函數未在 Windows 平台下實現。

time_sleep_until
(PHP 5 >= 5.1.0)

time_sleep_until — Make the script sleep until the specified time
設定指令碼順延強制的時間

<?php
if (!function_exists('time_sleep_until')) {
    function time_sleep_until($future) {
        if ($future < time()) {
            trigger_error("Time in past", E_USER_WARNING);
            return false;
        }
        sleep($future - time());
        return true;
    }
}
?>

<?php
//Implementation for < 5.1 or Windows users
if (!function_exists('time_sleep_until')) {
   function time_sleep_until($future) {
       if ($future < time()) {
           trigger_error("Time in past", E_USER_WARNING);
           return false;
       }
       usleep(($future - microtime(1))*1000000);
       return true;
   }
}
?>

<?php
//returns false and generates a warning
var_dump(time_sleep_until(time()-1));
// may only work on faster computers, will sleep up to 0.2 seconds
var_dump(time_sleep_until(time()+0.2));
?>

<?php
// +----------------------------------------------------------------------+
// | PHP Version 4                                                        |
// +----------------------------------------------------------------------+
// | Copyright (c) 1997-2004 The PHP Group                                |
// +----------------------------------------------------------------------+
// | This source file is subject to version 3.0 of the PHP license,       |
// | that is bundled with this package in the file LICENSE, and is        |
// | available at through the world-wide-web at                           |
// | http://www.php.net/license/3_0.txt.                                  |
// | If you did not receive a copy of the PHP license and are unable to   |
// | obtain it through the world-wide-web, please send a note to          |
// | license@php.net so we can mail you a copy immediately.               |
// +----------------------------------------------------------------------+
// | Authors: Arpad Ray <arpad@php.net>                                   |
// +----------------------------------------------------------------------+
//
// $Id: time_sleep_until.php,v 1.2 2005/12/07 21:08:57 aidan Exp $

/**
* Replace time_sleep_until()
*
* @category    PHP
* @package     PHP_Compat
* @link        http://php.net/time_sleep_until
* @author      Arpad Ray <arpad@php.net>
* @version     $Revision: 1.2 $
* @since       PHP 5.1.0
* @require     PHP 4.0.1 (trigger_error)
*/
if (!function_exists('time_sleep_until')) {
    function time_sleep_until($timestamp)
    {
            list($usec, $sec) = explode(' ', microtime());
        $now = $sec + $usec;
        if ($timestamp <= $now) {
            user_error('Specified timestamp is in the past', E_USER_WARNING);
            return false;
        }
        $diff = $timestamp - $now;
        usleep($diff * 1000000);
        return true;
    }
}
?>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.