ihsanberahim
function convert($size)
{
$unit=array('b','kb','mb','gb','tb','pb');
return @round($size/pow(1024,($i=floor(log($size,1024)))),2).' '.$unit[$i];
}
class ObjectOne {
public function __sleep() {
return collect(get_object_vars($this))->keys()->all();
}
public function __wakeup() {
return $this;
}
}
$object_one = new ObjectOne();
foreach(range(0, 100000) as $key => $value) {
$object_one->{'property _'.$key} = $value;
}
dump('before', convert(memory_get_usage()));
$sleep_memory = serialize($object_one);
unset($object_one);
dump('slept', convert(memory_get_usage()));
$wakeup_memory = unserialize($sleep_memory);
dump('wokeup', convert(memory_get_usage()));
"done";
"before"
"26.64 mb"
"slept"
"21.22 mb"
"wokeup"
"31.04 mb"
=> "done"