对PHP函数 rtrim 一个误解的地方

经常使用trim、rtrim删除字符串的空格,最近在使用rtrim的时候加上第二个参数,出现了非预期结果,结果很怪异,代码如下:

$class = "BehaviorController";
echo rtrim($class, "Controller");

预期结果是:Behavior,结果是:Behavi

查阅资料之后发现是这样:rtrim的操作是以字符为单位,不是以字符串,也就是说该函数会从右边删除每一个出现在 "Controller"的字符,直到遇到非参数中的字符, rtrim($class, "Controller") 和 str_replace('Controller', '', $class) 是完全不同的。

参考:http://php.net/manual/en/function.rtrim.php