国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

原來PHP對象比數組用更少的內存

番茄西紅柿 / 1180人閱讀

摘要:一直以為的數組更節省內存,從來沒有測試過,今天因為要讀取一個大配置文件作為。做了一次測試得出結論是使用對象保存數據更好,花費的內存是數組的。

一直以為php的數組更節省內存,從來沒有測試過,今天因為要讀取一個大配置文件作為pool。做了一次測試;

得出結論是 使用對象保存數據更好,花費的內存是數組array的1/4。

測試代碼

class obj
{
    public $name;
    public $id;

    public function __construct($id,$name)
    {
        $this->name = $name;
        $this->id = $id;
    }
}
$max = 10000;
$old = memory_get_usage();
for ($i=0;$i<$max;$i++){
    $arrayList[] = [$i,$max];
}
$new = memory_get_usage();
echo "{$max}個數組(默認key)內存消耗".($new-$old)."
";

$old = memory_get_usage();
for ($i=0;$i<$max;$i++){
    $arrayList[] = ["id"=>$i,"name"=>$max];
}
$new = memory_get_usage();
echo "{$max}個數組(和對象可以互相轉換的)內存消耗".($new-$old)."
";

$old = memory_get_usage();
for ($i=0;$i<$max;$i++){
    $objectList[] = new obj($i,$max);
}
$new = memory_get_usage();
echo "{$max}個對象內存消耗".($new-$old)."
";

結果

10000個數組(默認key)內存消耗             4288440
10000個數組(和對象可以互相轉換的)內存消耗  4284288
10000個對象內存消耗                      1451320

大概比例

array:object = 4:1

越是復雜的數組,用過同等對象保存,內存小更多

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/29254.html

相關文章

  • JavaScript代碼風格要素

    摘要:刪除不必要的代碼。而簡化前的代碼包含的語法要素對于傳達代碼意義本身作用并不大。刪除不必要的代碼有時候,我們試圖為不必要的事物命名。例如,大多數情況下,你應該省略僅僅用來當做返回值的變量。你的函數名應該已經說明了關于函數返回值的信息。 原文地址 本文已在前端早讀課公眾號首發:【第952期】JavaScript代碼風格要素 譯者:墨白 校對:野草 1920年,由威廉·斯特倫克(Will...

    YPHP 評論0 收藏0
  • 影響數據檢索效率的幾個因素

    摘要:數據檢索有兩種主要形態。所以,回歸本質,影響數據檢索效率的就那么幾個因素。數據檢索干的是什么事情定位加載變換找到所需要的數據,把數據從遠程或者磁盤加載到內存中。減少的數據量的兩個手段,聚合和抽樣。 數據檢索有兩種主要形態。第一種是純數據庫型的。典型的結構是一個關系型數據,比如 mysql。用戶通過 SQL 表達出所需要的數據,mysql 把 SQL 翻譯成物理的數據檢索動作返回結果。第...

    rollback 評論0 收藏0
  • PHP的性能優化方法總結

    摘要:內置函數的性能優劣。產生額外開銷的錯誤抑制符號,最好別用不管是性能優化和項目的健壯性等方面。在方法中遞增局部變量,速度是最快的。類似的方法調用所花費的時間接近于次的局部變量遞增操作。 什么情況之下,會遇到PHP性能問題?1:PHP語法使用不恰當。2:使用PHP語言做了它不擅長的事情。3:使用PHP語言連接的服務不給力。4:PHP自身的短板(PHP自身做不了的事情)。5:我們也不知道的問...

    gekylin 評論0 收藏0
  • apache與nginx

    摘要:大型網站建議用自代的集群功能從個人過往的使用情況來看,的負載能力比高很多。最新的服務器也改用了。你對的需求決定你的選擇。在模式下,如果處理慢或者前端壓力很大的情況下,很容易出現進程數飆升,從而拒絕服務的現象。 1、nginx相對于apache的優點: 輕量級,同樣起web 服務,比apache占用更少的內存及資源 抗并發,nginx 處理請求是異步非阻塞的,而apache 則是阻塞型的...

    tyheist 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<