PHP komut dosyası bellek kullanımlarını hesaplanıyor?

2 Cevap php

Bir senaryonun başında ve sonunda memory_get_usage() çağrı ve senaryo üzerinde kullanılan toplam bellek almak için, ikinci değerden 1 çıkarılarak kadar basit mi? Eğer öyleyse, nasıl kb ve mb gibi daha anlaşılır bir sayıya bu değeri dönüştürebilirsiniz?

2 Cevap

Böyle bir şey mi?

function file_size($size)
{
    $filesizename = array(" Bytes", " KB", " MB", " GB", " TB", " PB", " EB", " ZB", " YB");
    return $size ? round($size/pow(1024, ($i = floor(log($size, 1024)))), 2) .$filesizename[$i] : '0 Bytes';
}

Ben normalde dosya biçimi boyutları için kullanabilirsiniz, ancak sorunu çözmek için kullanabilirsiniz.

Sadece yürütme sırasında yüksek toplam tahsisi dönecektir, hangi senaryonun sonunda memory_get_peak_usage demeyi tercih edebilir. Başlangıç ​​ve bitiş değerleri çalışma sırasında ayırmanın sonra ayrılan bellek için hesaba katmaz alıyorsanız - Bu yararlı bir rakam olması daha muhtemeldir.

Bir insan okunabilir sayıya bu Biçimlendirme (sadece o Kb olarak yazdırmak 1024 bölün) el ele, ya da NumberFormatter gibi bir sınıf ile yapılabilir.