visual-craft/string-interpolator

PHP库,提供字符串插值(变量扩展)功能

v1.0.0 2018-01-02 18:04 UTC

This package is auto-updated.

Last update: 2024-08-29 02:57:50 UTC


README

Build Status

PHP库,提供字符串插值(变量扩展)功能

安装

composer require visual-craft/string-interpolator

用法

实例化插值器对象

use VisualCraft\StringInterpolator\StringInterpolator;

$interpolator = new StringInterpolator();

字符串插值

$result = $interpolator->interpolate('Demonstration $var1 $var2.', [
    'var1' => 'of',
    'var2' => 'interpolation',
]);
// $result === "Demonstration of interpolation."

变量名可以用 '{}' 包围,与字符串的其余部分区分开来

$result = $interpolator->interpolate('test${var1}test', [
    'var1' => '123',
]);
// $result === "test123test"

'$var_name' 可以用 '\' 转义

$result = $interpolator->interpolate('$var1 \$var2', [
    'var1' => '123',
]);
// $result === "123 $var2"

如果变量缺失,将抛出 VisualCraft\StringInterpolator\MissingVariableException

$result = $interpolator->interpolate('$var1 $var2', [
    'var1' => '123',
]);
// PHP Fatal error:  Uncaught VisualCraft\StringInterpolator\MissingVariableException: Missing variable 'var2'

从主题获取变量名称

$result = $interpolator->getVariablesNames('Demonstration $var1 $var2.');
// $result === ['var1', 'var2']

从主题获取变量数量

$result = $interpolator->getVariablesCounts('Demonstration $var1 $var2. $var1');
// $result === ['var1' => 2, 'var2' => 1]

测试

composer install --dev
vendor/bin/kahlan

许可证

MIT