PHP 8 以上有判断字符串末尾函数,但是低版本要自己实现了
/**
* 字符串长度
* @param $str
* @return false|int|string
*/
function stringLength($str) {
return mb_strlen($str,'utf-8');
}
/**
* 末尾含有
* @param string $string
* @param string $pattern
* @return bool
*/
function endsWith($string, $pattern) {
if (stringLength($string) < stringLength($pattern)) {
return false;
} else {
str_replace($pattern, '.', '\.');
str_replace($pattern, '[', '\[');
str_replace($pattern, ']', '\]');
str_replace($pattern, '*', '\*');
str_replace($pattern, '+', '\+');
str_replace($pattern, '(', '\(');
str_replace($pattern, ')', '\)');
str_replace($pattern, '$', '\$');
str_replace($pattern, '^', '\^');
return preg_match("/.*" . $pattern . "/", $string);
}
}