包含php的memory的詞條

本文目錄一覽:

PHP管理內存函數 memory_get_usage()使用介紹

下面是PHP

memory_get_usage()使用示例:

複製代碼

代碼如下:

echo

memory_get_usage(),

‘br

/’;

//143952

$tmp

=

str_repeat(”,

4000);

echo

memory_get_usage(),

‘br

/’;

//232048

unset($tmp);

echo

memory_get_usage();

//143952

上面的程序後面的注釋代表了它們的輸出(單位為

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

來分析

如何修改PHP的memory

找到解決方法: php.ini配置文件

中有三處地方需要改動: upload_max_filesize memory_limit post_max_size

這三個值都根據實際情況改下,重啟伺服器以後,雖然導入時仍然顯示是 最大限制:2,048 KB) ; 但實際上已經可以導入很大的資料庫了。。。

如何獲知PHP程序佔用多少內存memory

PHP性能優化過程中需要獲取PHP內存消耗,使用memory_get_usage()函數可獲取當前的內存消耗情況,函數使用簡單,這裡討論一下memory_get_usage()函數的用法與實例

三,基礎用法與實例

1,獲取當前的內存消耗量

複製代碼代碼如下:

?php

echo memory_get_usage();

$var = str_repeat(“liuhui”, 10000);

echo memory_get_usage();

unset($var);

echo memory_get_usage();

?

分別輸出:62328 122504 62416

說明:memory_get_usage()函數輸出的數值為bytes單位

2,格式化memory_get_usage()輸出

複製代碼代碼如下:

?php

function convert($size){

$unit=array(‘b’,’kb’,’mb’,’gb’,’tb’,’pb’);

return @round($size/pow(1024,($i=floor(log($size,1024)))),2).’ ‘.$unit[$i];

}

echo convert(memory_get_usage(true));

?

輸出:256 kb

3,自定義函數獲取數組或變數值大小

複製代碼代碼如下:

?php

function array_size($arr) {

ob_start();

print_r($arr);

$mem = ob_get_contents();

ob_end_clean();

$mem = preg_replace(“/\n +/”, “”, $mem);

$mem = strlen($mem);

return $mem;

}

$memEstimate = array_size($GLOBALS);

?

phpstorm一直出現out of memory怎麼解決

CF出現out of memory指的是系統物理內存不足,這時候如果繼續玩會對電腦有損傷。可以通過以下步驟解決: 打開運行窗口,可以快捷鍵”WIN+R”打開,輸入「cmd」,然後點開。 輸入「BCDEdit /set PAE forceenable Windows」指令,按回車。 再輸入「Bcdedi

如何增加PHP的內存memory

memory_limit = 128M ;

在php的配置文件:php.ini裡面有怎麼一個成熟,應該可以設置。大約在306行左右。

在php.ini中把memory_limit改成256M了,都重啟伺服器了,在phpinfo()中還是顯示128M,是怎回事?

看看你修改的php.ini位置與phpinfo()下的Loaded Configuration File路徑是否一致 這個php.ini是你伺服器下的php.ini而不是php中的php.ini

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/184904.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-26 05:02
下一篇 2024-11-26 05:03

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若伺服器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27
  • PHP與Python的比較

    本文將會對PHP與Python進行比較和對比分析,包括語法特性、優缺點等方面。幫助讀者更好地理解和使用這兩種語言。 一、語法特性 PHP語法特性: <?php // 簡單的P…

    編程 2025-04-27
  • PHP版本管理工具phpenv詳解

    在PHP項目開發過程中,我們可能需要用到不同版本的PHP環境來試驗不同的功能或避免不同版本的兼容性問題。或者我們需要在同一台伺服器上同時運行多個不同版本的PHP語言。但是每次手動安…

    編程 2025-04-24
  • PHP數組去重詳解

    一、array_unique函數 array_unique是php中常用的數組去重函數,它基於值來判斷元素是否重複,具體使用方法如下: $array = array(‘a’, ‘b…

    編程 2025-04-24
  • PHP導出Excel文件

    一、PHP導出Excel文件列寬調整 當我們使用PHP導出Excel文件時,有時需要調整單元格的列寬。可以使用PHPExcel類庫中的setWidth方法來設置單元格的列寬。下面是…

    編程 2025-04-24
  • php擴展庫初探

    一、什麼是php擴展庫? PHP擴展庫(PHP extension)是一些用C語言編寫的動態鏈接庫,用於擴展PHP的功能。PHP擴展庫使得PHP可以與各種資料庫系統相連、SMTP、…

    編程 2025-04-23

發表回復

登錄後才能評論