brandembassy / php-memory
一个简单的工具,提供易于使用的API,用于从php.ini获取内存配置。
1.2.1
2021-03-31 16:20 UTC
Requires
- php: >=7.1
- marc-mabe/php-enum: ^3.0 || ^4.1
Requires (Dev)
- mockery/mockery: ^1.0
- phpstan/phpstan: ^0.9.2
- phpunit/phpunit: ^8.5
Suggests
- nette/di: Needed for registering package using the Nette Extension.
This package is not auto-updated.
Last update: 2024-09-12 10:24:23 UTC
README
一个简单的工具,提供易于使用的API,将php.ini
中的内存限制配置转换为字节数。
为什么
在php.ini
中的核心指令memory_limit
是一个简单的字符串。管理员或程序员可以设置多个有效值,例如:
500
= 500字节128M
= 134,217,728字节1G
= 1,073,741,824字节
您可以通过ini_get('memory_limit')
函数获取原始字符串值。然而,没有内置的PHP函数可以提供对字节值的简单访问。
安装
将包添加到您的composer.json
composer require brandembassy/php-memory
使用
创建MemoryLimitProvider
服务(或者更好地,通过您的DI容器注入它)
$configuration = new \BrandEmbassy\Memory\MemoryConfiguration();
$limitProvider = new \BrandEmbassy\Memory\MemoryLimitProvider($configuration);
还有Nette框架的DI扩展(您必须安装nette/di
包)。只需在您的services.neon
文件中注册它
extensions:
- BrandEmbassy\Memory\Bridge\MemoryLimitNetteExtension
然后您可以通过这种方式访问PHP内存限制的字节数值
$limitInBytes = $memoryLimitProvider->getLimitInBytes();
有任何问题或改进的想法?请随时提出问题或发送PR!