legolabs/phputils

有用的PHP类,匹配各种用途

v0.3 2022-12-07 11:44 UTC

This package is auto-updated.

Last update: 2024-09-07 15:18:03 UTC


README

有用的PHP类,匹配各种用途

EnvReplacer

替换选中文件中的标记符,用匹配的环境变量值。

在Docker容器中非常实用,当你需要将大量的环境变量插入到本地配置文件中时。

标记符必须符合正则表达式 /__[A-Z0-9_]{5,30}__/,对应的环境变量必须相同,不包括分隔符(__)

示例

标记符: __MARKER__
环境变量: MARKER

用法

包含标记符的示例文件,例如 php.ini

...
upload_max_filesize = __UPLOAD_MAX_FILESIZE__
max_file_uploads = __MAX_FILE_UPLOADS__
...

设置环境变量

export UPLOAD_MAX_FILESIZE=64M
export MAX_FILE_UPLOADS=20

PHP 脚本

use Legolabs\Utils\EnvReplacer\EnvReplacer;

$replacer = new EnvReplacer('/etc/php/8.1/apache/php.ini');
$replacer->apply();

结果文件

...
upload_max_filesize = 64M
max_file_uploads = 20
...