Orada bir tek değişkenin bellek kullanımını almak için doğrudan bir yol var, ama Gordon önerdiği gibi, sen memory_get_usage
kullanabilirsiniz. Bu ayrılan toplam bellek miktarını dönecektir, bu yüzden tek bir değişkenin kullanımı almak için önce ve sonra bir çözüm kullanmak ve kullanımını ölçmek olabilir. Bu biraz hacky, ama çalışması gerekir.
$start_memory = memory_get_usage();
$foo = "Some variable";
echo memory_get_usage() - $start_memory;
Bu hiçbir şekilde güvenilir bir yöntem olduğunu unutmayın, siz değişken atarken başka bir şey bellek dokunur emin olamaz, yani bu sadece bir yaklaşım olarak kullanılmalıdır.
Aslında fonksiyon içinde değişken bir kopyasını oluşturma ve kullanılan hafıza ölçerek bir fonksiyonu olduğunu açabilirsiniz. Bu test değil, ancak ilke olarak, ben yanlış bir şey görmüyorum:
function sizeofvar($var) {
$start_memory = memory_get_usage();
$tmp = unserialize(serialize($var));
return memory_get_usage() - $start_memory;
}