深入PHP內存相關的功能特性詳解

時間:2024-09-02 18:54:52 PHP 我要投稿
  • 相關推薦

關于深入PHP內存相關的功能特性詳解

  可能有的讀者碰到過類似下面的錯誤吧:

  Fatal error: Allowed memory size of X bytes exhausted (tried to allocate Y bytes)這個錯誤的信息很明確,PHP已經達到了允許使用的最大內存了,通常上來說這很有可能是我們的程序編寫的有些問題。比如:一次性讀取超大的文件到內存中,或者出現超大的數組,或者在大循環中的沒有及時是放掉不再使用的變量,這些都有可能會造成內存占用過大而被終止。

  PHP默認的最大內存使用大小是32M, 如果你真的需要使用超過32M的內存可以修改php.ini配置文件的如下配置:

  memory_limit = 32M如果你無法修改php配置文件,同時你的PHP環境沒有禁用ini_set()函數,也可以動態的修改最大的內存占用大小:

  <?php ini_set("memory_limit", "128M");既然我們能動態的調整最大的內存占用,那我們是否有辦法獲取目前的內存占用情況呢?答案是肯定的。

  1.memory_get_usage(),這個函數的作用是獲取目前PHP腳本所用的內存大小。

  2.memory_get_peak_usage(),這個函數的作用返回當前腳本到目前位置所占用的內存峰值,這樣就可能獲取到目前的腳本的內存需求情況。

  單就PHP用戶空間提供的功能來說,我們似乎無法控制內存的使用,只能被動的獲取內存的占用情況

  那么當我們知道php引用計數,函數表,符號表,常量表等,這些信息都會占用內存的時候

  我們可以有意的避免不必要的浪費內存,比如我們在項目中通常會使用autoload來避免一次性把不一定會使用的類包含進來,而這些信息是會占用內存的

  如果我們及時把不再使用的變量unset掉之后可能會釋放掉它所占用的空間

【深入PHP內存相關的功能特性詳解】相關文章:

PHP語言的特性盤點201703-29

PHP必備功能開發03-22

php多進程編程詳解201703-30

筆記本SDR內存參數詳解05-18

CAD怎么使用特性匹配功能12-25

詳解核心交換機的TRUNK功能02-26

教育碩士輔導之詳解教育的結構與功能12-03

功能性羽毛球鞋知識詳解03-20

淺析CSS3的新功能和新特性03-06

亚洲制服丝袜二区欧美精品,亚洲精品无码视频乱码,日韩av无码一区二区,国产人妖视频一区二区
日韩欧美亚洲中文字幕2021 | 亚洲日韩AV中字在线网站 | 亚洲成a人在线电影 | 午夜亚洲精品中文字幕 | 亚洲精品国偷自产在线99人热 | 精品在线视频一区 |