IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類(lèi)|軟件專(zhuān)題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置:首頁(yè)網(wǎng)絡(luò)編程PHP編程 → 一些你不曾知道的PHP函數(shù)和功能

一些你不曾知道的PHP函數(shù)和功能

時(shí)間:2015/6/28來(lái)源:IT貓撲網(wǎng)作者:網(wǎng)管聯(lián)盟我要評(píng)論(0)

  php的真正威力源自于它的函數(shù),但有些PHP函數(shù)并沒(méi)有得到充分的利用,也并不是所有人都會(huì)從頭到尾一頁(yè)一頁(yè)地閱讀手冊(cè)和函數(shù)參考,這里將向您介紹這些實(shí)用的函數(shù)和功能。

3、內(nèi)存使用信息

 

  通過(guò)偵測(cè)腳本的內(nèi)存使用情況,有利于代碼的優(yōu)化。PHP提供了一個(gè)垃圾收集器和一個(gè)非常復(fù)雜的內(nèi)存管理器。腳本執(zhí)行時(shí)所使用的內(nèi)存量,有升有跌。為了得到當(dāng)前的內(nèi)存使用情況,我們可以使用memory_get_usage()函數(shù)。如果需要獲得任意時(shí)間點(diǎn)的最高內(nèi)存使用量,則可以使用memory_limit()函數(shù)。

  1. 以下為引用的內(nèi)容:  
  2.  
  3. echo"Initial:".memory_get_usage()."bytes\n";  
  4. /*prints  
  5. Initial:361400bytes  
  6. */  
  7.  
  8. //let’suseupsomememory  
  9. for($i=0;$i<100000;$i++){  
  10. $array[]=md5($i);  
  11. }  
  12.  
  13. //let'sremovehalfofthearray  
  14. for($i=0;$i<100000;$i++){  
  15. unset($array[$i]);  
  16. }  
  17.  
  18. echo"Final:".memory_get_usage()."bytes\n";  
  19. /*prints  
  20. Final:885912bytes  
  21. */  
  22.  
  23. echo"Peak:".memory_get_peak_usage()."bytes\n";  
  24. /*prints  
  25. Peak:13687072bytes  
  26. */ 

4、CPU使用信息

 

  為此,我們要利用getrusage()函數(shù)。請(qǐng)記住這個(gè)函數(shù)不適用于Windows平臺(tái)。

  1. 以下為引用的內(nèi)容:  
  2.  
  3. print_r(getrusage());  
  4. /*prints  
  5. Array  
  6. (  
  7. [ru_oublock]=>0  
  8. [ru_inblock]=>0  
  9. [ru_msgsnd]=>2  
  10. [ru_msgrcv]=>3  
  11. [ru_maxrss]=>12692  
  12. [ru_ixrss]=>764  
  13. [ru_idrss]=>3864  
  14. [ru_minflt]=>94  
  15. [ru_majflt]=>0  
  16. [ru_nsignals]=>1  
  17. [ru_nvcsw]=>67  
  18. [ru_nivcsw]=>4  
  19. [ru_nswap]=>0  
  20. [ru_utime.tv_usec]=>0  
  21. [ru_utime.tv_sec]=>0  
  22. [ru_stime.tv_usec]=>6269  
  23. [ru_stime.tv_sec]=>0  

  這可能看起來(lái)有點(diǎn)神秘,除非你已經(jīng)有系統(tǒng)管理員權(quán)限。以下是每個(gè)值的具體說(shuō)明(你不需要記住這些):

  1. 以下為引用的內(nèi)容:  
  2.  
  3. ru_oublock:blockoutputoperations  
  4. ru_inblock:blockinputoperations  
  5. ru_msgsnd:messagessent  
  6. ru_msgrcv:messagesreceived  
  7. ru_maxrss:maximumresidentsetsize  
  8. ru_ixrss:integralsharedmemorysize  
  9. ru_idrss:integralunshareddatasize  
  10. ru_minflt:pagereclaims  
  11. ru_majflt:pagefaults  
  12. ru_nsignals:signalsreceived  
  13. ru_nvcsw:voluntarycontextswitches  
  14. ru_nivcsw:involuntarycontextswitches  
  15. ru_nswap:swaps  
  16. ru_utime.tv_usec:usertimeused(microseconds)  
  17. ru_utime.tv_sec:usertimeused(seconds)  
  18. ru_stime.tv_usec:systemtimeused(microseconds)  
  19. ru_stime.tv_sec:systemtimeused(seconds) 

  要知道腳本消耗多少CPU功率,我們需要看看‘usertime’和’systemtime’兩個(gè)參數(shù)的值。秒和微秒部分默認(rèn)是單獨(dú)提供的。你可以除以100萬(wàn)微秒,并加上秒的參數(shù)值,得到一個(gè)十進(jìn)制的總秒數(shù)。讓我們來(lái)看一個(gè)例子:

  1. 以下為引用的內(nèi)容:  
  2.  
  3. //sleepfor3seconds(non-busy)  
  4. sleep(3);  
  5.  
  6. $data=getrusage();  
  7. echo"Usertime:".  
  8. ($data['ru_utime.tv_sec']+  
  9. $data['ru_utime.tv_usec']/1000000);  
  10. echo"Systemtime:".  
  11. ($data['ru_sti

    關(guān)鍵詞標(biāo)簽:PHP函數(shù)

相關(guān)閱讀

文章評(píng)論
發(fā)表評(píng)論

熱門(mén)文章 plsql developer怎么連接數(shù)據(jù)庫(kù)-plsql deveplsql developer怎么連接數(shù)據(jù)庫(kù)-plsql deve2021年最好用的10款php開(kāi)發(fā)工具推薦2021年最好用的10款php開(kāi)發(fā)工具推薦在 PHP 中使用命令行工具在 PHP 中使用命令行工具php應(yīng)用程序安全防范技術(shù)研究php應(yīng)用程序安全防范技術(shù)研究

相關(guān)下載

人氣排行 詳解ucenter原理及第三方應(yīng)用程序整合思路、方法PHP中防止SQL注入攻擊PHP會(huì)話(huà)Session的具體使用方法解析PHP運(yùn)行出現(xiàn)Notice : Use of undefined constant 的解決辦法CakePHP程序員必須知道的21條技巧PHP如何清空mySQL數(shù)據(jù)庫(kù)PHP采集圖片實(shí)例(PHP采集)plsql developer怎么連接數(shù)據(jù)庫(kù)-plsql developer連接數(shù)據(jù)庫(kù)方法