国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

使用ltrace工具跟蹤PHP庫函數調用的方法

2024-09-04 11:49:34
字體:
來源:轉載
供稿:網友

本文實例講述了使用ltrace工具跟蹤PHP庫函數調用的方法。分享給大家供大家參考,具體如下:

可能大家已經很熟悉使用strace來跟蹤系統調用,今天介紹一個跟蹤庫函數的利器ltrace

比如我有這么一段PHP代碼

test.php:

  1. <?php 
  2.  
  3.  $y = '1380'
  4.  
  5.  $arr = array(); 
  6.  
  7.  for($i = 0; $i < 2000; $i ++){ 
  8.  
  9.    $arr[] = "{$i}"//故意用引號包起來設成字符串 
  10.  
  11.  } 
  12.  
  13.  for($i = 0; $i < 2000; $i ++){ 
  14.  
  15.    if(!in_array($y$arr)) continue
  16.  
  17.  } 
  18.  
  19. ?> 

ltrace -c /usr/local/php/bin/php test.php (-c表示匯總)

會看到輸出如下:

  1. % time   seconds usecs/call   calls   function 
  2.  
  3. ------ ----------- ----------- --------- -------------------- 
  4.  
  5. 95.02  7.417240     368   20146 strtol 
  6.  
  7. 2.15  7.160390     413   17316 memcpy 
  8.  
  9. 1.63  5.522641     240   22966 free 
  10.  
  11.  0.67  2.275374   2275374     1 curl_global_cleanup 
  12.  
  13.  0.54  2.235466     617   3618 __ctype_tolower_loc 
  14.  
  15.  0.16  2.123547    1194   1778 strrchr 
  16.  
  17.  0.17  1.532224     67   22836 malloc 
  18.  
  19.  0.29  0.382083     67   5678 strlen 

可以看到 strtol幾乎用去了執行時間的95.02%,瓶頸就找出來了。及PHP會在in_array()測試時試圖將字符串行數字轉換為long,這會耗費大量時間。所以只要將字符串都轉換為整形即可大幅度提高效率。

ltrace真心是個好工具

希望本文所述對大家PHP程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 利辛县| 临汾市| 延安市| 双桥区| 大洼县| 开封市| 云霄县| 闻喜县| 越西县| 葫芦岛市| 固安县| 治县。| 德钦县| 米林县| 蓬莱市| 若尔盖县| 巴青县| 扎兰屯市| 道真| 邳州市| 延庆县| 贡山| 永康市| 依兰县| 尼木县| 西充县| 万安县| 乌鲁木齐市| 蒙城县| 虞城县| 从江县| 靖州| 九龙城区| 崇明县| 太仆寺旗| 稷山县| 肇东市| 米易县| 余姚市| 甘肃省| 松原市|