我偶然发现了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功能放入单独的功能有什么好处?
答案 0 :(得分:4)
除此之外,如果字符串已经由给定字符串完成,则它不会再附加:
例如:
'abbc' === str_finish('ab', 'bc');
'abbc' === str_finish('abbcbc', 'bc');
'abcbbc' === str_finish('abcbbcbc', 'bc');