A simple Laravel package to get PHP memory usage and limit, with faking support for testing.
You can install the package via composer:
composer require rapidmail/laravel-memoryYou can use the Memory facade to get memory information:
use RapidmailLibs\Memory\Facades\Memory;
// Get current memory usage in bytes
$usage = Memory::getMemoryUsage();
// Get real memory usage in bytes (allocated by PHP)
$realUsage = Memory::getRealMemoryUsage();
// Get PHP memory limit in bytes (or null if none is set)
$limit = Memory::getMemoryLimit();You can fake the values in your tests:
Memory::fakeMemoryUsage(1024);
Memory::fakeRealMemoryUsage(2048);
Memory::fakeMemoryLimit('512M'); // Accepts shorthand or bytes
Memory::getMemoryUsage(); // 1024
Memory::getRealMemoryUsage(); // 2048
Memory::getMemoryLimit(); // 536870912To fake no memory limit:
Memory::fakeMemoryLimit(-1);
Memory::getMemoryLimit(); // nullcomposer lint
composer phpstan
composer testThe MIT License (MIT). Please see License File for more information.