测试字符串是否$str以子字符串结尾的标准PHP方法$test是:
$str
$test
$endsWith = substr( $str, -strlen( $test ) ) == $test
这是最快的方法吗?
阿萨夫所说的是正确的。PHP中有一个内置函数可以做到这一点。
substr_compare($str, $test, strlen($str)-strlen($test), strlen($test)) === 0;
如果$test比$strPHP 长,则会发出警告,因此您需要首先进行检查。
function endswith($string, $test) { $strlen = strlen($string); $testlen = strlen($test); if ($testlen > $strlen) return false; return substr_compare($string, $test, $strlen - $testlen, $testlen) === 0; }