程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP memory_get_usage()管理內存

PHP memory_get_usage()管理內存

編輯:關於PHP編程

我們在實際編碼中,要想實現對內存的查看和操作,許多程序員們第一個想到的就是

下面是PHP memory_get_usage()使用示例:

  1. echo memory_get_usage(), '<br />'; // 313864  
  2. $tmp = str_repeat('http://blog.huachen.me/', 4000);  
  3. echo memory_get_usage(), '<br />'; // 406048  
  4. unset($tmp);  
  5. echo memory_get_usage(); // 313952 

上面的程序後面的注釋代表了它們的輸出(單位為 byte(s)),也就是當時 PHP 腳本使用的內存(不含 memory_get_usage() 函數本身占用的內存)

由上面的例子可以看出,要想減少內存的占用,可以使用 PHP unset() 函數把不再需要使用的變量刪除。類似的還有:PHP mysql_free_result() 函數,可以清空不再需要的查詢數據庫得到的結果集,這樣也能得到更多可用內存。

PHP memory_get_usage()還可以有個參數,$real_usage,其值為布爾值。默認為 FALSE,表示得到的內存使用量不包括該函數(PHP 內存管理器)占用的內存;當設置為 TRUE 時,得到的內存為不包括該函數(PHP 內存管理器)占用的內存。

所以在實際編程中,可以用PHP memory_get_usage()比較各個方法占用內存的高低,來選擇使用哪種占用內存小的方法。

常用的檢測:

用microtime函數就可以分析程序執行時間
memory_get_usage可以分析內存占用空間
SQL的效率可以使用打開慢查詢查看日志分析
SQL 找到有瓶頸的使用EXPLAIN 來分析


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved