PHP中microtime()函數

來源:互聯網
上載者:User

首先介紹一下此函數的用法:

定義和用法(php5)
microtime() 函數返回當前 Unix 時間戳記和微秒數。返回的字串的格式:msec sec

文法
microtime(get_as_float)
參數 描述
get_as_float 如果給出了 get_as_float 參數並且其值等價於 TRUE,該函數將返回一個浮點數。

說明
本函數僅在支援 gettimeofday() 系統調用的作業系統下可用。

如果調用時不帶選擇性參數,本函數以 "msec sec" 的格式返回一個字串,其中 sec 是自 Unix 紀元(0:00:00 January 1, 1970 GMT)起到現在的秒數,msec 是微秒部分。字串的兩部分都是以秒為單位返回的。

代碼:
<?php
echo microtime();echo '<br />';echo microtime(TRUE);
?>
瀏覽器顯示結果:
0.45316500 12212282521221228252.45
我們看到microtime(TRUE),只返回了2位的小數。如果要輸出更多位的微秒,需要函數number_format().看最後附1這個函數的用法。
補充:在PHP4下microtime()的用法 ,由於沒有參數TRUE的用法,所以如果要得到浮點數,需要配合array_num()函數和explode()函數。
比如:
  在PHP裡面,要想統計一個action或者一個函數或者某個過程的執行所消耗的時間往往都只有一個辦法:在運算前記錄下時間戳記,在運算後記錄下時間戳記,然後相減,就能得到一個相對比較實際的時間。 基本代碼如下(從phpmyadmin裡複製而來,懶得打了。這段代碼其實也就是phpMyadmin裡SQL的執行時間的計算):
PHP代碼
<?php
// garvin: Measure query time.
// TODO-Item http://sourceforge.net/tracker/index.php?func=detail&aid=571934&group_id=23067&atid=377411
$querytime_before = array_sum(explode(' ', microtime()));

$result = @PMA_DBI_try_query($full_sql_query, null, PMA_DBI_QUERY_STORE);

$querytime_after = array_sum(explode(' ', microtime()));

$GLOBALS['querytime'] = $querytime_after - $querytime_before;

?>

 看文章最後附2,array_sum()函數的用法。  其中 array_sum(explode(' ', microtime())); 是PHP4時代的寫法,到PHP5之後,microtime函數多了一個bool值的參數,加上這個參數後可以直接得到 array_sum(explode(' ', microtime())); 相等的值,即:microtime(true)。  附1:number_format()的用法
number_format
 格式化數字字串。 文法: string number_format(float number, int [decimals], string [dec_point], string [thousands_sep]); 傳回值: 字串 函式種類: 數學運算 
 
內容說明

  本函式用來將浮點參數 number 格式化。
  若沒加參數 decimals 則傳回的字串只要整數部份,加了此參數才依參數指定的小數點位元傳回。參數 dec_point 表示小數點的表示方式方法,內定值是 ".",若需要轉換成其它的小數點就可以在這個參數改掉。參數 thousands_sep 為整數部份每三位的分隔字元號,內定值是 ","。
  本函式最特別的地方就是參數數目,最少要有一個,也就是欲格式化的字串;也可以有二個或者四個參數,但不能用三個參數。值得注意的是指定小數點的位元之後的數字直接捨棄,沒有四捨五入的情形。 
 
使用範例

  <?$short_pi = "3.14159";$my_pi = number_format($short_pi, 2);echo $my_pi."/n";   // 3.14$foo = 850017.9021;$new_foo = number_format($foo, 3, ".", " ");echo $new_foo."/n";  // 850 017.902?> 
附2 array_num的用法
array_sum
--------------------------------------------------------------------------------
  (PHP 4 >= 4.0.4)  array_sum --  計算數組中所有值的和 說明mixed array_sum ( array array) array_sum() 將數組中的所有值的和以整數或浮點數的結果返回。 例子 1. array_sum() 例子  $a = array(2, 4, 6, 8); echo "sum(a) = ".array_sum($a)."/n"; $b = array("a"=>1.2,"b"=>2.3,"c"=>3.4); echo "sum(b) = ".array_sum($b)."/n";  以上程式輸出為: sum(a) = 20sum(b) = 6.9
 
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.