<?php if( !defined( 'ABSPATH') ) exit(); class RevSliderMemoryUsageInformation { private $real_usage; private $statistics = array(); // Memory Usage Information constructor public function __construct($real_usage = false) { $this->real_usage = $real_usage; } // Returns current memory usage with or without styling public function getCurrentMemoryUsage($with_style = true) { $mem = memory_get_usage($this->real_usage); return ($with_style) ? $this->byteFormat($mem) : $mem; } // Returns peak of memory usage public function getPeakMemoryUsage($with_style = true) { $mem = memory_get_peak_usage($this->real_usage); return ($with_style) ? $this->byteFormat($mem) : $mem; } // Set memory usage with info public function setMemoryUsage($info = '') { $this->statistics[] = array( 'time' => time(), //microtime(), 'info' => $info, 'memory_usage' => $this->getCurrentMemoryUsage()); } // Print all memory usage info and memory limit and public function printMemoryUsageInformation() { //return true; echo '<pre>'; foreach ($this->statistics as $satistic) { echo "Time: " . $satistic['time'] . " | Memory Usage: " . $satistic['memory_usage'] . " | Info: " . $satistic['info']; echo "\n"; } echo "\n\n"; echo "Peak of memory usage: " . $this->getPeakMemoryUsage(); echo "\n\n"; echo '</pre>'; } // Set start with default info or some custom info public function setStart($info = 'Initial Memory Usage') { $this->setMemoryUsage($info); } // Set end with default info or some custom info public function setEnd($info = 'Memory Usage at the End') { $this->setMemoryUsage($info); } // Byte formatting private function byteFormat($bytes, $unit = "", $decimals = 2) { $units = array('B' => 0, 'KB' => 1, 'MB' => 2, 'GB' => 3, 'TB' => 4, 'PB' => 5, 'EB' => 6, 'ZB' => 7, 'YB' => 8); $value = 0; if ($bytes > 0) { // Generate automatic prefix by bytes // If wrong prefix given if (!array_key_exists($unit, $units)) { $pow = floor(log($bytes) / log(1024)); $unit = array_search($pow, $units); } // Calculate byte value by prefix $value = ($bytes / pow(1024, floor($units[$unit]))); } // If decimals is not numeric or decimals is less than 0 // then set default value if (!is_numeric($decimals) || $decimals < 0) { $decimals = 2; } // Format output return sprintf('%.' . $decimals . 'f ' . $unit, $value); } }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
shortcode_generator | Folder | 0755 |
|
|
addons.class.php | File | 7.19 KB | 0644 |
|
debug.php | File | 2.81 KB | 0644 |
|
export-html.class.php | File | 31.06 KB | 0644 |
|
export.class.php | File | 28.29 KB | 0644 |
|
folder.class.php | File | 4.17 KB | 0644 |
|
functions-admin.class.php | File | 66.05 KB | 0644 |
|
help.class.php | File | 592.51 KB | 0644 |
|
import.class.php | File | 75.05 KB | 0644 |
|
index.php | File | 27 B | 0644 |
|
license.class.php | File | 2.3 KB | 0644 |
|
loadbalancer.class.php | File | 3.41 KB | 0644 |
|
newsletter.class.php | File | 1.69 KB | 0644 |
|
plugin-update.class.php | File | 365.46 KB | 0644 |
|
template.class.php | File | 31.61 KB | 0644 |
|
tooltips.class.php | File | 31.76 KB | 0644 |
|
tracking.class.php | File | 11.46 KB | 0644 |
|
widget.class.php | File | 4.62 KB | 0644 |
|