親自證驗php session和array的容量大小是跟php配置的記憶體大小來控制的

來源:互聯網
上載者:User
親自驗證php session和array的容量大小是跟php配置的記憶體大小來控制的

今天搞完一個功能後,由於用到了比較多的數組,所以興緻勃勃的想搞清楚php的array和session的容量到底有多大,其實主要是想驗證一下之前我聽說的array的容量是跟配置有關這一說法的正確性。

array的驗證代碼程式:

$arr=array();//這一行可以省去的,我是比較奉行java中的先聲明後使用原則
for ($i=0;$i<8000000;$i++){
$arr[$i]=$i;
}

echo count($arr);
unset($arr);

session的驗證代碼程式:

ession_start();
for ($i=0;$i<8000000;$i++){
$_SESSION[$i]=$i;
}

echo count($_SESSION);

運行上面的程式後,會出現下面的錯誤提示:

註:此時我php.ini中memory_limit值的配置是10M



然後 接下來我的驗證方法是把php.ini中memory_limit的值改為1000M,然重啟apache,再次運行上面的驗證程式,則可以正常輸出array和session的大小值。


難道不是我修改了php.ini的原因,是其他巧合問題導致的正常?我要再次驗證一下是不是php.ini中memory_limit配置的原因,我把該值重新設定為10M,重啟apache後,然後再次運行上面的驗證程式,結果的確又報上面的記憶體不足異常了。現在我相信了array和session的容量大小的確是跟php.ini中memory_limit的配置有關的。
不過我最大的一次配置該值的大小為1300M,運行驗證程式後我的電腦幾乎處於休眠狀態,呵呵,下面是效能佔用圖:


以上僅為我的個人驗證觀點,僅為分享使用,驗證方法肯定存在不足,所以請大家指導,非常感謝。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.