rapidmail / laravel-memory
A Laravel package to get PHP memory usage and limit, with faking support.
1.0.1
2026-03-30 13:06 UTC
Requires
- php: ^8.3
- illuminate/contracts: ^12.0|^13.0
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
- larastan/larastan: ^3.0
- laravel/pint: ^1.15
- orchestra/testbench: ^10.0|^11.0
- phpstan/extension-installer: ^1.4
- phpunit/phpunit: ^11.0|^12.0
README
A simple Laravel package to get PHP memory usage and limit, with faking support for testing.
Installation
You can install the package via composer:
composer require rapidmail/laravel-memory
Usage
You 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();
Testing
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(); // 536870912
To fake no memory limit:
Memory::fakeMemoryLimit(-1); Memory::getMemoryLimit(); // null
Testing
composer lint
composer phpstan
composer test
License
The MIT License (MIT). Please see License File for more information.