成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

PHP unset()函數銷毀變量

開發 后端
PHP unset()函數被我們用來銷毀變量,但是往往在實際操作時不能使內存中的數據進行釋放。我們在文章中講為大家具體講解有關問題的解決辦法。

我們在學習PHP語言的時候,通常都會各個函數的用法比較模糊,很那去一一的掌握。但是我們又必須要掌握這些函數。下面我們就為大家詳細介紹有關PHP unset()函數的相關使用方法。#t#

PHP unset()函數是用來銷毀變量的,但很多時候,這個函數只把變量給銷毀了,內存中存放的該變量的值仍然沒有銷毀,也就是沒能達到我們想要的釋放內存的效果。這里我建議大家用 $變量=null 的方法來釋放其內存。原因看了下面的就知道了。

以下是關于PHP unset()函數的幾點要點:(以下均在windows環境下測試,php 2.5.9)

1. 該函數只有在變量值所占空間超過256字節長的時候才會釋放內存
2. 只有當指向該值的所有變量(比如有引用變量指向該值)都被銷毀后,地址才會被釋放(也要執行1的判斷)

下面給出例子代碼論證:

  1. < ?php  
  2. $test=str_repeat("1",256);  
  3. $s = memory_get_usage();   
  4. //改函數用來查看當前所用內存  
  5. unset($test);  
  6. $e = memory_get_usage();  
  7. echo ' 釋放內存: '.($s-$e);   
  8. //輸出為272,但如果上面test變量改為
    $
    test=str_repeat("1",255),輸出則為0  
  9. ?> 

至于為什么是272而不是256,就不是很清楚了,不知道內部是怎么處理的。

  1. < ?php  
  2. $test = str_repeat("1",256);  
  3. $p = &$test;  
  4. unset($test);  
  5. echo $p;   
  6. //輸出為256個1。如果上面改為unset($p)
    ,更不行了,echo $test 直接顯示為256個1  
  7. ?> 

也就是說內存中賦給$a的值仍然存在。可見unset()并沒達到釋放內存的效果。

但如果在上述代碼中加入$test=null,或者再加一個unset($p),就能達到釋放內存效果了,PHP unset()函數測試代碼如下:

變量賦值為null方法:

  1. < ?php  
  2. $test = str_repeat("1",256);  
  3. $p = &$test;  
  4. $s = memory_get_usage();   
  5. $test = null;  
  6. unset($test);  
  7. $e = memory_get_usage();  
  8. echo ' 釋放內存: '.($s-$e); 
  9. //輸出為272  
  10. var_dump($p); //輸出為NULL  
  11. ?> 

 

將指向該地址中值的變量全部銷毀的方法:

  1. < ?php  
  2. $test = str_repeat("1",256);  
  3. $p = &$test;  
  4. $s = memory_get_usage();   
  5. //注意,以下2個unset()順序對調沒
    有關系,不影響結果  
  6. unset($p);  
  7. unset($test);   
  8. $e = memory_get_usage();  
  9. echo ' 釋放內存: '.($s-$e); //輸出為272  
  10. ?> 

 

到此PHP unset()函數論證完畢。

責任編輯:曹凱 來源: 百度博客
相關推薦

2009-12-09 17:07:08

PHP unset全局

2009-12-09 17:37:36

PHP函數isset(

2009-11-16 16:31:56

PHP數組刪除

2011-12-15 09:00:51

PHP 7

2011-07-12 17:06:43

PHP

2009-11-18 14:11:10

PHP數組變量

2020-08-19 15:30:04

PHP網絡安全代碼

2009-12-11 09:22:28

2009-11-17 09:32:32

PHP數值函數

2009-12-01 13:35:41

PHP函數ini_ge

2011-06-15 15:36:19

PHP變量常量

2009-12-07 14:44:27

PHP文件函數

2009-12-09 16:28:32

PHP路徑函數

2009-11-25 09:56:06

PHP數組處理函數

2009-12-08 11:10:20

PHP GD庫函數

2009-12-08 19:24:09

PHP函數索引

2009-12-11 17:39:47

PHP String函

2009-12-11 17:45:09

PHP Math函數

2013-07-26 14:59:13

2009-11-18 10:22:14

PHP substr
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 99久久免费精品视频 | 二区av| 国产h在线 | 国产精品爱久久久久久久 | 国产激情片在线观看 | 亚洲97 | 色综合一区二区三区 | 国产成人精品在线 | 日韩区 | 人人鲁人人莫人人爱精品 | 欧美综合在线观看 | 欧美日韩在线精品 | 亚洲国产成人av | 欧美午夜影院 | 午夜精品福利视频 | 日本淫视频 | 波多野结衣一区二区 | 国产日韩欧美一区 | 欧美精品在线一区二区三区 | 毛片在线免费 | 欧美精品一区二区三区四区五区 | 久热精品在线 | 成人羞羞国产免费视频 | 亚洲天堂精品一区 | 91大神在线看 | 国产精品久久久久久久久久三级 | 欧美激情一区二区三级高清视频 | 在线日韩欧美 | 欧美日韩国产高清 | 男人的天堂中文字幕 | 国产精品久久久久久久久图文区 | wwwxxx日本在线观看 | 日韩精品成人网 | 亚洲a在线观看 | 国产在线观 | 国产欧美在线视频 | 久久精品亚洲精品国产欧美 | 国产欧美精品一区二区色综合朱莉 | 欧美日韩亚 | 亚洲国产一区二区三区在线观看 | 久久久久久国产精品 |