laravels辅助函数str_finish的目的是什么?

时间:2017-08-10 15:18:05

标签: php laravel function helpers

我偶然发现了str_finish的帮助函数laravel framework

这与简单的

有什么不同
$newString = 'some string' . 'END';

功能代码是:

public static function finish($value, $cap)
{
    $quoted = preg_quote($cap, '/');
    return preg_replace('/(?:'.$quoted.')+$/u', '', $value).$cap;
}

将这个看似基本的内置PHP功能放入单独的功能有什么好处?

1 个答案:

答案 0 :(得分:4)

除此之外,如果字符串已经由给定字符串完成,则它不会再附加:

例如:

'abbc' === str_finish('ab', 'bc');
'abbc' === str_finish('abbcbc', 'bc');
'abcbbc' === str_finish('abcbbcbc', 'bc');

Source